2014-03-29 91 views
1

我想重写当前存在的特定分支,以覆盖/替换远程存储库服务器中的所有内容。Git覆盖远程存储库中的特定(活动)分支

如果我在那个分支上做git pull我总是得到一个合并冲突,因为这两个文件都被改变了,我无法得到它合并的权利(没有mergetool),我想避免任何提交是不必要的,尤其是从这个服务器becaue它只有一个预览服务器。

我已经编辑好文件并再次添加/提交文件,但没有成功。 所以我回滚git reset --hard <sha1>到最后一个真正的承诺。 希望wa sok这样做?

+0

是,你在做什么是好的。你可以按照这个链接来更好地理解。 http://stackoverflow.com/questions/1125968/force-git-to-overwrite-local-files-on-pull – chanchal118

+0

我试过git fetch --all,现在git状态告诉我im背后的22个提交。但是,如果我把所有东西从远程不应该是up2date什么22承诺? – user2370234

+0

你回滚了你的本地树,所以它应该说你落后了,因为远程树还没有回滚。 –

回答

0

你的方法是修复一个文件。

要重置旅游分支,你可以简单地取出,并将其重置为远程分支:

git checkout yourBranch 
git fetch 
git reset --hard origin/anotherBranch 

YourBranch现在指的是相同的承诺为origin/anotherBranch
(取决于你想要什么分支,YourBranchorigin/anotherBranch可能具有相同的名称)

确保你没有任何正在进行中的工作(如复位 - 硬将删除)

相关问题