2011-05-27 24 views
9

我一直愉快地开发一个分支,每一天每一天基础重建从主用:git的变基问题

git rebase master 

今天,当我做了一个变基高手,我得到以下信息:

回落至修补基地和 3路合并...

底垫带我通过合并同一套音响的一个非常漫长的过程一遍又一遍。它指出“补丁失败,在001”和一直持续到044

我已经完成了底垫和推分支到远程之后,我再次进入底垫命令而不做任何修改代码:

git rebase master 

然后它再次带我通过完全相同的rebase。至于发生了什么,我完全迷失了方向。我只是想将主程序中的错误修复应用到这个分支,而不是每次都经历这个过程。

任何人都可以帮助我了解正在发生的事情。每次我从主人身上重新摆脱,我都不想这样做。

+0

也许你想看看这里:http://stackoverflow.com/questions/4215726/from-git-to-svn-failed-to-merge-in-the-changes – 2011-05-27 13:58:15

+0

有可能有人做了一些不应该完成的事情,在你正在重新分配的主分支上。这些东西是改变过去历史的命令,比如“修改”等... – 2011-05-27 14:00:10

+0

以这种方式没有改变历史 – dagda1 2011-05-27 14:01:34

回答

4

使用git rebase连续重新绑定到另一个分支上,这是Git通常希望工作的方式。你应该做的是将master每隔一段时间合并到你自己的开发分支中。这将使您的开发分支与master之间的更新保持一致,并将保留您自己的开发落实master分支。

如果你不希望有一堆合并的从主在你的开发分支,使用git rerere的功能,并做到:

 
git merge master 
git reset HEAD~ 

随着git rerere启用,它将如果记录您的合并决议有任何冲突,以便你以后不会有巨大的冲突。

+0

我认为合并到开发分支并重新绑定到主服务器上很有意义。 – dagda1 2011-05-27 14:15:03

+0

以为'rerere'是错字,但很高兴能够发现这是一个对我来说非常有用的命令。 – Jayesh 2013-02-11 17:11:45

+0

此命令是否仅在本地保存合并分辨率,或者它们可能会被推送到服务器,因此其他人可以使用它们进行合并? – dk14 2014-10-21 22:49:13