Git手动将代码在不同时间推送到2个单独的存储库

时间:2018-05-30 13:07:13

标签: git github gitlab

我需要帮助在GIT中设置一个新项目。

我的情景如下:

  1. 我将拥有2个具有不同存储库的独立服务器。
  2. 将它们视为分期和制作。
  3. 我将在本地开发机器上安装原始代码。
  4. 完成功能后,应首先将代码推送到登台服务器,而不是生产服务器。
  5. 经常出现的一个场景是我可能不需要将所有更改都推送到Production。
  6. 假设我今天已经将6个更改推送到Staging服务器,而我可能只需要将2个更改推送到Production,剩下的更改将在另一天推送。
  7. 基本上,首先所有提交都转到登台服务器,只有选定的提交转到生产服务器,也可能在相同或不同的日期。

    这可能吗?

    如果是,如果使用GIT无法完全实现,我们可以告诉我如何使用或使用哪种工具。

    由于

1 个答案:

答案 0 :(得分:1)

有两种方法可以做到这一点。

第一种方法是首选方法,即使用git remote

在您的标准git存储库中,运行git remote -v通常会显示以下信息:

origin  <url_to_git_repo> (fetch)
origin  <url_to_git_repo> (push)

您可以使用git remote add <name> <url>添加更多内容。

在这种情况下,您可以git remote add staging <staging_server_repo_location>git remote add prod <prod_server_repo_location>

如果要将更改推送到临时服务器,可以使用git push staging <branch_name>

然后,在将更改推送到生产服务器时,您将使用git push prod <branch_name>

此方法允许您充分利用Git的分支系统,而不是下面详述的第二种方法。

第二个是最少首选方法,可以通过使用不同的分支来实现。

例如,您将拥有master分支,staging分支和production分支。

您可以根据需要在分支机构之间拆分工作流程。