O.D*_*.D. 13 git rebase pull-request
我们目前的工作流程:
从 dev 创建一个功能分支。在开发功能并推送分支后,请执行以下操作:
git checkout dev
git pull --rebase (在开发中)
git checkout my-feature-branch
git rebase dev
解决冲突,然后执行 git push -f 或 git push (第一次)。
我的问题来自我们的一名开发团队成员:
我们是否需要按原样完成整个过程,或者我们可以直接发出拉取请求,特别是响应总是“我正在处理一个没有被任何其他开发人员共享的组件”?
提前致谢
ser*_*gej 22
比方说,当你在你feature-branch的dev. 所以历史可能是这样的:
1 - 2 - 3 - 5 (dev)
\
4 - 6 - 7 - 8 (feature-branch)
Run Code Online (Sandbox Code Playgroud)
如果您只是创建一个拉取请求并且dev分支维护者必须合并它,他将需要处理潜在的冲突——对dev分支维护者不利。
如果您在提交拉取请求之前将feature-branch分支变基dev并解决潜在的冲突,
1 - 2 - 3 - 5 (dev)
\
4 - 6 - 7 - 8 (feature-branch)
Run Code Online (Sandbox Code Playgroud)
对于dev分支维护者来说,这只是一个快速而简单的快进合并。
此工作流程强制开发人员在本地解决冲突,并使集成商的工作更轻松。
您的工作流程只是典型的变基工作流程,我希望看到它被用来将功能分支直接保留在其祖先之前,在本例中是分支dev。my-feature-branch如果您想在拉取请求期间保留快速转发分支的可能性dev,那么是的,您需要执行所有这些步骤。请注意,可能需要强制推送,因为变基dev可以重写功能分支的历史记录。
至于您是否应该执行变基工作流程而不是合并或其他工作流程,这是主观的并且取决于很多因素。但是,如果变基确实最有意义,那么我同意您当前的步骤,并且没有找到简化它的方法。
| 归档时间: |
|
| 查看次数: |
5129 次 |
| 最近记录: |