编程知识 cdmana.com

git 使用 reset 命令

参考 参考二

此命令适用于代码未推送到远端时,已经推送到远端会出现的多条记录。

git reset 撤销对 staged 或 commit 的修改

示例:

git reset HEAD CONTRIBUTING.md

git reset --soft、 --mixed 与 --hard
--soft 只移动 HEAD,暂存区与工作区保存不变;
--mixed 移动 HEAD,取消当前暂存的所有东西(暂存区还原)。工作目录回到 git add 和 git commit 的命令执行之前;
--hard 移动 HEAD,暂存区与工作区全部还原。

不带参数,默认使用的是 --mixed。 还原后新暂存的内容被还原到工作区,可以分阶段重新提交。适用于过去某一次提交出错,并且后续提交也会影响需要重新提交。或者只是想将已经stage到暂存区的文件还原到工作区(未stage的时候)

--soft 用于修改最近一次或几次的提交。比如过去的一段代码反复提交很多遍或者最近的一次提交信息出错了,想修改提交信息然后重新提交。

--hard 用于舍弃最近的几次提交。

git checkout 撤销对未 stage 的文件的修改

示例: 撤销当前修改过的文件

git checkout -- CONTRIBUTING.md

将所有已经修改但是未 stage 的文件还原成一开始的样子

git checkout .

版权声明
本文为[lemos]所创,转载请带上原文链接,感谢
https://my.oschina.net/lemos/blog/4713351

Tags Git
Scroll to Top