是否有类似于svn还原的git revert?我需要一个命令来擦除我本地的*所有*并将其设置为远程头

pri*_*pri 22 git github

在svn或subclipse中,我可以简单地对根项目执行'revert',并且丢弃所有本地更改并将src更新为HEAD中的最新版本.我似乎没有在git中找到相同的内容,尽管有几个博客声称相同.

这就是我做的:

  • 从我的家庭mac提交了10个文件.没推.
  • 从工作计算机和PUSHED提交相同的10个文件和更多文件.
  • 回到家里,我想从遥远的原点/主人那里拿走最新的.

尝试过git pull,它带来了变化但警告了冲突

尝试了git reset --hard HEAD,但什么也没发生.我仍然看到承诺的冲突变化

我必须尝试过其他一些我不记得的命令.我只需要回到远程头部而不用担心我的本地回购是什么状态.

救命?

hol*_*eek 30

您需要重置为origin/master:

git reset --hard origin/master
Run Code Online (Sandbox Code Playgroud)


Lil*_*ard 7

git reset --hard @{u}将丢弃所有本地更改并将当前分支重置为其上游分支.这仅在您设置了该信息时才有效(例如,通过克隆最新版本的git或使用git push -u).如果您没有该信息但您知道上游分支,则可以使用git reset --hard origin/master(假设origin/master这里是上游分支的名称).