How can I revert my last changes with git?
我把代码弄乱了,我想把它恢复到最后一次提交。
我在做git status,我看到我修改了很多文件。我一点也不想看到他们。所以我做了git log,发现了最后一次提交的哈希值。
我在命令中使用了这个hash:git fetch origin this_hash并得到消息:
1 2 3
| Mig-macbook-air:ios M$ git fetch origin this_hash
From https://github.com/linkto/myrepo
* branch this_hash -> FETCH_HEAD |
但当我执行git status操作时,我仍然会看到损坏的文件,也会在我的IDE中看到它们。我想彻底摆脱这些变化,我该怎么做?
我没有推进上一次提交;我只是创建了一个分支并进行了提交。
- 你读过如何丢弃Git中未分页的更改吗?如何撤消最后一次提交?或者将git repo恢复到以前的提交。如果是,为什么这些解决方案不适用于您?如果没有,为什么不先搜索?
- 简单:xkcd.com/1597
- 可能重复的git:撤消所有工作目录更改,包括新文件
如果在运行git status时看到所有文件,则意味着您有许多未提交的本地更改。如果您确定要消除这些更改,请运行git reset --hard head。
git fetch只是从远程获取更多的提交;它不接触工作目录。
您需要git checkout ,它将把该版本签出到工作目录中。
您有几种选择:
在这里阅读所有关于如何做到这一点的方法:如何将头部移回以前的位置?(分离头)