gpt4 book ai didi

git - 将 bug 修复补丁从 release 分支 merge 到 master 分支

转载 作者:行者123 更新时间:2023-12-04 15:34:09 27 4
gpt4 key购买 nike

我有一个 master 分支,我正在其中 push 我的最新开发。

现在在某个时候,我确实从 master 分支发布并创建了名为 release1 的新分支。

现在我在master分支上做新的开发

与此同时,其他团队也在 release1 分支上执行了一些错误修复。

现在是发布 2 的时候了。在这里,我需要将在 release1 上完成的错误修复包含到更新的 master 分支中,然后 fork release2 分支。

新的 release2 分支应该在 release1 分支上完成所有错误修复 + 最新开发发生在 master 分支上的 release1 之后。

这里有哪些不同的可能工作流程。以及基于此如何使用 git mergegit rebase 以及 git cherry-pick在这里指挥?

最佳答案

我比较喜欢的解决方案如下。

master -> release1

master会有自己的进一步发展,

假设 release1 中存在一些错误分支然后应该创建hotfix来自 release1 的分支分支并修复 hotfix 中的错误后分支, merge 到release1即可分支和 rebase hotfixmaster分支以维护历史,一旦重新设置为 master分支 merge hotfixmaster分支所以错误修复将在 master 中进行和 release1分支机构

现在假设是时候 release2 , 你只需要创建 release2来自 master 的分支分支,因为所有错误都已在 master 分支中修复,所有新开发都在 master 中分支机构。

Master
commit1
commit2 -> release1
commit3
commit4


git checkout release1
git checkout -b hotfix

Hotfix
commit2
bugfix1

merge hotfix 与 release1 将成为

git checkout release1
git merge hotfix

Release1
Commit1
commit2
butfix1

Rebase hotfix with master 它将重写你的历史

git checkout hotfix
git rebase master

Hotfix
commit1
commit2
commit3
commit4
bugfix1

然后 merge hotfix分支到master分支

git checkout master
git merge hotfix

Master
commit1
commit2
commit3
commit4
bugfix1

git branch -d hotfix
git push -d origin hotfix

别忘了删除hotfix因为我们已经完成了那个分支,所以一旦 merge 就不再需要那个分支了。如果记录在某处,您还可以将修补程序分支的名称更改为 jira 票证 ID 或错误 ID。

现在从已经修复了错误的 master 创建 release2。

关于git - 将 bug 修复补丁从 release 分支 merge 到 master 分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60314108/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com