- git checkout -- <file> #丢弃工作区的修改, 不要省略 -- ,这是只在工作区(work tree)修改了内容,还没有add 到暂存区,此时想撤销修改. 就使用这个命令
- git reset head <file> #把暂存区的修改撤销掉(unstage),重新放回工作区; 然后如果想从工作区撤销掉,就执行 git checkout -- <file> 即可
- git reset --hard 目标版本号 # 撤销到目标版本或者说撤销到某次提交, 好像是要使用 git push -f 强推上去
- git revert -n 版本号 #撤销某次提交, 他们俩的区别是: 假设有3个版本, `git reset --hard 版本1的索引 ` 撤销到版本1, 那么版本2和3 都没有了, 而使用`git revert -n 版本二` 撤销, 版本1,2,3都会保留, 会出现一个新的版本4, 这个版本是保留了1,3而把版本2的内容去掉了.
原文地址:https://www.cnblogs.com/bneglect/p/11434319.html
时间: 2024-10-24 11:35:51