2012-04-06 68 views
2

我一直在开发Web应用程序并使用git作为项目。到现在为止,我一直在我的本地机器上运行它。现在我想在托管的Web服务器上查看它,我想创建一个标签。因此使用git tag -a v0.1 -m 'version0.1'命令。命令git tag列出了我刚刚创建的标记。现在的问题是我如何在我的Web服务器上签出(签出)这个标签?如何在托管的Web服务器上签出git标签

我的托管Web服务器了解git命令。我想知道一个命令或过程在我的服务器上有这个标签。那里不会有任何发展在服务器上。

回答

0

我想出了一个简单的方法。没有必要定义一个新的远程。

  • 步骤1:在本地机器(提交你的代码之后)简单地做:
 
    $ git tag -a vx.x.x -m "version x.x.x" 
    $ git push --tags 
  • 第二步:托管服务器上,导航到你要签然后将文件夹这样做:
 
    $ git clone [email protected]:username/proj.git 
    $ cd proj 
    $ git checkout vx.x.x 

现在,如果你要创建下一个版本的另一个标签让我们说x.x.y,然后重复上述步骤1,用x.x.y替换x.x.x,并用以下替换步骤2。

  • 步骤2:在托管服务器上执行以下操作。
 
    $ cd proj 
    $ git fetch --tags 
    $ git checkout vx.x.y 
2

我知道您希望将git标记本地存储库副本复制到托管的Web服务器上。你也提到你的托管的Web服务器设置为了解git命令。

现在你的本地计算机上,远程Web服务器定义的名称和推标签:

$ git remote add myHostedWebServer ssh://server.example.org/path/toyour/website.git 

$ git push --tags myHostedWebServer 

希望这有助于

更新时间: 我明白你的问题的样子,你想直接将您的本地更改推送到托管的Web服务器。如果是这样,你可以按照上面提到的步骤。但是现在你已经提到你有你在GitHub上的代码,并希望从您的GitHub的更新您的虚拟主机服务器,有几种方法,其中之一是:

  • 在本地机器上做的:$git push myDefinedName master
  • 正如你刚才提到你的主机服务器理解Git命令 并假设你有git的初始化--bare创建存储库, 导航到托管Web服务器目录与GIT相关联,并做到:

    $git pull myDefinedName master

    $git checkout <tag name>

    或者,您可以使用post-receive挂钩。你可以得到更详细的信息here

+0

嗨user1316,我有我的代码在github上。那么我可以使用以下格式的命令吗? '$ git remote add myDefinedName [email protected]:username/Hello-World.git'。而且,在我的本地机器上运行此操作之后,我应该在主机服务器上执行哪些命令以便在其中添加tag v0.1? (我很抱歉,因为这可能很愚蠢,但我不知道,因为我对git完全陌生)。 – Goje87 2012-04-07 18:45:26

+0

我将更新答案,并保留上面提供的其他信息。 – Ziran 2012-04-08 00:27:15