当前位置: 代码迷 >> 综合 >> Git---撤销(clean, checkout,reset,revert)(本文纯学习笔记,不作为教程)
  详细解决方案

Git---撤销(clean, checkout,reset,revert)(本文纯学习笔记,不作为教程)

热度:13   发布时间:2023-12-21 08:55:12.0

删除未追踪文件
*删除untracked files-
$ git clean -f
*连 untracked 的目录也一起删掉
$ git clean -fd
*连 gitignore 的untrack 文件/目录也一起删掉 (慎用,一般这个是用来删掉编译出来的 .o之类的文件用的)
$ git clean -xfd
*在用上述 git clean 前,墙裂建议加上 -n 参数来先看看会删掉哪些文件,防止重要文件被误删

$ git clean -nxfd
$ git clean -nf
$ git clean -nfd
取消修改(在工作区):
$ git checkout – file_name.txt单个文件
$ git checkout .所有文件

取消已暂存的文件:
可以使用 git reset HEAD … 的方式取消暂存,返回已修改未暂存的状态:
$ git reset HEAD benchmarks.rb

撤销未push的commit到你想恢复到的commit_id:
$ git reset --hard commit_id返回到某个节点,不保留修改。
$ git reset --soft commit_id返回到某个节点,保留修改。

修改最后一次提交:
有时候我们提交完了才发现漏掉了几个文件没有加,或者提交信息写错了。想要撤消刚才的提交操作,可以使用 --amend 选项重新提交:
$ git commit --amend
如果刚才提交时忘了暂存某些修改,可以先补上暂存操作,然后再运行 --amend 提交:

$ git commit -m ‘initial commit’
$ git add forgotten_file
$ git commit --amend
撤销某次提交:
git revert 撤销 某次操作,此次操作之前和之后的commit和history都会保留,并且把这次撤销作为一次最新的提交:
$ git revert HEAD 撤销前一次 commit
$ git revert HEAD^ 撤销前前一次 commit
$ git revert HEAD~n 撤销前N次的commit
$ git revert commit_id (比如:fa042ce57ebbe5bb9c8db709f719cec2c58ee7ff)撤销指定的版本,撤销也会作为一次提交进行保存。

作者:WorldPeace_hp
链接:https://www.jianshu.com/p/414ad1eaf44b
来源:简书

  相关解决方案