git - 在将我的任何功能分支提交推送到远程之前,我是否需要重新设置为 master
问题描述
我最近开始研究 git rebase。
根据一些个人练习,我注意到如果在将我的功能上的本地提交推送到远程后,我将我的功能分支重新设置为 master,我将遇到本地功能分支在远程后面的场景 x no。尝试推送到原点时的提交次数。
在这种情况下我不得不强制推送,并且我确实阅读了强制推送的风险。但是,我想了解的是,在我们的工作流程中,何时是变基的最佳时间(不是变基与合并)
这是一个更好地说明它的场景:
提交:共同祖先
特征:提交 b,提交 d,提交 e
主:提交 c,提交 f,提交 g
主人被推到远程。
功能被推送到远程。
git 命令:
git checkout feature
git rebase master
这会导致冲突,我需要先解决冲突,然后执行强制 git push 否则我会陷入无限循环。
所以,我想了解的是我应该先变基,然后只将那些提交 c、f 和 g 推送到远程?
可能这已经是一种标准的已知做法。我尝试搜索但没有找到任何满意的答案。
解决方案
首先变基并推送新提交是一个非常常见的工作流程。
不同的存储库/组织对他们的期望有不同的标准,但是您正在做的是一种完全合理的方式来贡献更改。