我有时会发现我正在分支机构工作,我希望将所有更改从分支合并到我的主分支中,这样主机就是我正在使用的分支的克隆。是否有一种简单的方法来更新master,以便将来自分支的所有更改合并到主服务器中。我正在寻找的行为是master将成为分支的精确克隆。我通常将个别冲突一次一个地合并为主人,但是有更简单的方法吗?谢谢你的时间。
答案 0 :(得分:1)
git reset --hard
应该是您的解决方案。
http://git-scm.com/2011/07/11/reset.html
编辑:我会将其标记为重复: How to replace master branch in git, entirely, from another branch?
看一下我提到的副本中的解决方案。但根据所需的结果,我建议的重置可能是解决方案。
答案 1 :(得分:1)
如果您想保留历史记录,请使用ours
合并策略:
git checkout branch
git merge -s ours master
如果您不关心主分支的历史记录,请将其重置:
git checkout master
git reset --hard branch
(这将丢弃所有你的本地更改并使master的提交无法访问!)
如果你没有在master中提交任何不在你的分支中的提交,你可以快速将master转发到你的分支:
git checkout branch
git merge master
# or `git merge --ff-only master` to only allow fast-forward