我在一个大型团队工作,团队定期向上游提交。在这一点上,我的起源的历史与上游有很大的不同,所以唯一的“同步”的方法是重设到上游,并强制推进到原点。
有没有办法“同步”或改写我的历史与上游,摆脱“迷你”提交给我,并取代他们从上游压扁的?
发布于 2016-01-24 09:54:57
在git中有几种方法可以做到这一点--我将尝试解释其中的一种。让我们假设您正在处理一个名为bug_fix的本地分支。通过执行以下操作,您应该能够与上游同步:
bug_fix上创建一个新分支:
git结帐-b temp_bug_fixbug_fix分支,并将HEAD重置到本地分支与上游同步的位置。假设这是10次提交,则命令如下:
git签出bug_fix git重置-硬头~10bug_fix和origin
git拉原点temp_bug_fix分支中选择提交
樱桃-f)
git推送原点这个答案假设你的所有改变都是在别人提交了所有的“迷你”之后做出的。
我很想知道你们当地的分支机构是怎么进入这个州的。标准的做法是,开发人员在推进到原点之前,应该压缩他们的提交。一旦一个地方分支机构在上游被合并,任何人都不应该用武力推动来改变历史--这只是一个麻烦的处方。
https://stackoverflow.com/questions/34957250
复制相似问题