将功能分支推送到远程存储库以与不同步的主服务器合并

时间:2019-04-20 10:03:40

标签: git

在我工作的公司中,开发人员在本地提交更改后将本地功能分支推送到远程存储库。然后,在检查代码之后,将功能分支合并到master(远程master)中。

我的问题是:

如果本地主机和远程主机不同步怎么办?然后将分支合并到一个完全不同的项目中?例如,我git 2周前克隆了master,然后从其分支到一个新的功能分支,但是在这两周内,master进行了更改。因此,我担心我的功能分支将合并到完全不同的master分支中!没有我先测试它。

问题:在将功能分支推送到远程存储库并将请求首先拉到请求之前,工作流程是不是更聪明?

git checkout master
git pull
git checkout my-feature-branch
git merge master (now i know my branch is in sync with master. Resolve conflicts locally)

只有这样:

git checkout my-feature-branch
git push origin my-feature-branch?

1 个答案:

答案 0 :(得分:1)

我看到(成功地)在多家公司受雇的流程如下:

  1. 将功能分支合并到主开发分支:
    • 签出开发分支的更新版本。
    • 将开发分支合并到功能分支,并解决所有可能的冲突。
    • 以“准备好将其合并到开发分支”状态提交/推送功能分支。
    • 将功能分支合并到开发分支中(现在可以删除功能分支)。
    • 在开发分支上运行CI / CD测试,以验证合并有效。
  2. 将主开发分支合并到master分支中(应格外小心,应通知所有其他开发人员该开发分支已合并到master中):
    • 签出master分支的更新版本。
    • 将master分支合并到development分支中(这不是问题,因为Development分支应该包含master分支中的所有内容)。
    • 以合并状态提交/推动开发分支。
    • 将开发分支合并到master分支(并确定是否应压缩提交)。
    • 确保master稳定在master分支上运行所有可能的测试。
    • 创建合并提交的标签-从开发到分支的合并通常是作为版本发布的前奏。

参考文献:

相关问题