2

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

我的托管网络服务器理解 git 命令。我想知道在我的服务器上有这个标签的命令或过程。服务器上不会有任何开发。

4

2 回答 2

2

我了解您希望将 git tag 本地存储库副本复制到您的托管 Web 服务器上。您还提到您的托管 Web 服务器已设置为理解 git 命令。

现在在您的本地机器上,为远程网络服务器定义一个名称并推送标签:

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

$ git push --tags myHostedWebServer

希望这可以帮助

更新: 按照我理解您的问题的方式,您希望将本地更改直接推送到托管的 Web 服务器。如果是这样,您可以按照上述步骤进行操作。但是,既然您已经提到您在 github 上有您的代码,并且希望从您的 github 更新您的 Web 主机服务器,那么有几种方法,其中之一是:

  • 在您的本地机器上执行:$git push myDefinedName master
  • 正如您所提到的,您的主机服务器理解 git 命令并假设您有 git init --bare 来创建存储库,导航到与 git 关联的托管 Web 服务器目录并执行以下操作:

    $git pull myDefinedName master

    $git checkout <tag name>

    或者,您可以使用接收后挂钩。您可以在此处获取更多详细信息

于 2012-04-06T11:57:57.553 回答
0

我想出了一个简单的方法。无需定义新的遥控器。

  • 第 1 步:在本地机器上(提交代码后)只需执行以下操作:
    $ git tag -a vx.xx -m "版本 xxx"
    $ git push --tags
  • 第 2 步:然后在托管服务器上,导航到您必须结帐的文件夹,然后执行:
    $ git clone git@github.com:username/proj.git
    $ cd项目
    $ git checkout vx.xx

现在,如果您必须为下一个版本创建另一个标签,比如说 xxy,然后重复上面的步骤 1,将 xxx 替换为 xxy,并将步骤 2 替换为以下内容。

  • 第 2 步:在托管服务器上执行以下操作。
    $ cd项目
    $ git fetch --tags
    $ git checkout vx.xy
于 2012-04-09T16:02:04.707 回答