在svn或subclipse中,我可以简单地对根项目执行'revert',并且丢弃所有本地更改并将src更新为HEAD中的最新版本。我似乎没有在git中找到相同的内容,尽管有几个博客声称相同。
这就是我所做的:
尝试了git pull,它带来了变化,但警告了冲突
尝试了git reset --hard HEAD
,但什么都没发生。我仍然看到承诺的冲突变化
我必须尝试过其他一些我不记得的命令。我只需要回到远程头部而不用担心我的本地回购是什么状态。
帮助?
答案 0 :(得分:30)
您需要重置为origin / master:
git reset --hard origin/master
答案 1 :(得分:7)
git reset --hard @{u}
将丢弃所有本地更改并将当前分支重置为其上游分支。这仅适用于您设置该信息的情况(例如,通过克隆最新版本的git或使用git push -u
)。如果您没有该信息但是您知道上游分支,则可以使用git reset --hard origin/master
(假设此处origin/master
是上游分支的名称)。
答案 2 :(得分:1)
你想要git reset
,但是你可能希望早点返回一个提交,因为你已经将这些文件提交到了家用mac上的HEAD。
git reset --hard HEAD^
如果您担心破坏某些内容,可以随时执行git log
,获取要返回的提交的哈希值(丢弃您的主页mac更改),然后git reset --hard
哈希。
答案 3 :(得分:1)
对于简单的还原,您可以使用:git checkout
git checkout <master>