我刚开始使用Git并发现当我在分支机构中实现一个功能时,我会遇到一些真正需要尽快推送到主干的错误。为了做到这一点,我使用checkout切换回trunk,进行更改并提交它们。我现在有一个无bug的主干。
不幸的是,我的分支也需要修复此错误。由于功能不完整,我不能将分支合并回主干。如何更改我的分支以便它接收我对主干所做的更改?
如果重要的话,我正在自行开发,因此只需要担心一个存储库。
我正在使用TortoiseGit,因此特定于此的说明将有所帮助,但不是必需的。
答案 0 :(得分:20)
确保您已检出分支(git checkout branch-name
)并运行
git rebase master
解决任何到达的冲突。
如果您不确定这些命令的作用,请尝试不使用TortoiseGit并使用终端。它将帮助您真正理解命令。
警告:这假定为本地分支。如果您已共享分支,请不要运行rebase(因为它会修改历史记录)。运行
git merge master
当你在另一个分支上时。这个历史较少,但可以使用。
区别在于:
答案 1 :(得分:1)
如果其他人无法使用您的存储库,则上述建议的git rebase master
将有效。
如果您的存储库是公开的,那么您真的不想重新绑定,因为它可能会搞砸其他已克隆您的存储库的人。在这种情况下,您希望使用git merge master
将更改从主干合并到您的功能分支。