2011-11-15 87 views
133

我已经分叉了一个git仓库和安装上游。我在Master分支上做了一些改变,并提交给github。如何恢复主分支到上游

现在我该怎么做才能放弃Master分支中的所有更改并使其与上游主分支相同?

回答

255

(我假设你现在要忽略更改为您origin遥控器,你对你的master分支,要恢复到upstream远程的内容)

首先,你的工作副本重置为上游主:

git remote update 
# the double hyphen ensures that upstream/master is 
# considered as a revision and not confused as a path 
git reset --hard upstream/master -- 

那么这个新的分支头推到你的出身库,忽略了一个事实,这不会是一个快进:

git push origin +master 
+13

如果您使用GitHub分支分支,可能还需要运行'git remote add upstream '。 – Kato

+3

'git push origin + master'中'+'的含义是什么?是否只是'git push origin master'? – bluenote10

+3

@ bluenote10他们不一样。 '+'是告诉git“[忽略]它不会是快进的事实”。这有点像做'git push --force',但它只适用于那个特定的参考。 – nickgrim

相关问题