Git:可能会将分支插入主控中,忽略任何合并冲突?
除了主人之外,我还有一个分支的git回购。 我想让这个分支成为主人 - 完全覆盖主人。 很明显,我可以做一个合并,但是这会导致很多冲突,并且当我知道我总是希望来自附加分支而不是主分支的文件时,解决它们似乎有很多工作。
是否有可能将一个分支转换为master,或者做一个合并,并告诉git始终支持来自另一个分支的文件?
提前致谢!
您可以使用reset命令一次性完成此操作:
git checkout master
git reset --hard topicBranch
硬重置将使当前分支指向给定的提交。 这将抛弃主控上尚未在主题分支上的任何提交; 他们不会被合并。
这里也适用同样的rebase警告:如果您已经将master分支推送到与其他开发人员共享的任何存储库,请不要执行此操作。
如果您是唯一一位访问此存储库并且不与其他开发人员共享的开发人员,则通过创建新分支很容易。 在开始之前,请确保您的存储库是干净的(所有修改都已检入当前分支)。
备份旧的主分支:
git checkout master
git branch oldMaster
删除旧主人并创建新主人:
git checkout topicBranch
git branch -D master
git branch master
如果托管在远程服务器上的存储库上,则需要更新远程设备:
git push --force remoteName master:master
重要提示:如果其他开发人员已从您的存储库中提取数据,则此方法将在他们下次从您的存储库中提取或者推送到他们的存储库时为他们生成错误。
我仍然不是git的专家,但它看起来像你想要rebase命令:
git checkout branch_name
git rebase master
git checkout master
看起来像这样会将所有更改自动合并到您的主设备上,然后将这些更改重新应用到主设备上(这样您就不必合并)。
当然,如果你只是想完全覆盖master,我认为你应该能够将该分支推送到主存储库,如果你使用强制选项。 像这样的东西:
git push --force origin branch_name
然后你的遥控器将会在主分支中有你分支的所有变化,并且你可以把它拉回去......
git checkout master
git pull --force origin
链接地址: http://www.djcxy.com/p/43551.html
上一篇: Git: possible to make a branch into the master, ignoring any merge conflicts?