git 还原未被提交的文件

  • 这将取消您可能已暂存的所有文件git addgit reset
  • 这将还原所有本地未提交的更改(应在repo root中执行): git checkout . 您还可以仅将未提交的更改还原到特定文件或目录: git checkout [some_dir|file.txt] 还原所有未提交更改的另一种方法(更长时间键入,但可以从任何子目录工作): git reset --hard HEAD
  • 这将删除所有本地未跟踪文件,因此保留git跟踪文件: git clean -fdx 警告: -x 还将删除所有被忽略的文件,包括指定的文件.gitignore!您可能希望-n用于预览要删除的文件。

总结一下:执行以下命令基本上等同git clone于原始来源的新鲜(但它不会重新下载任何内容,因此速度更快):

git reset
git checkout .
git clean -fdx

这种情况的典型用法是在构建脚本中,当你必须确保你的树是绝对干净的 - 没有任何修改或本地创建的目标文件或构建工件,并且你想让它工作得非常快并且不能重新每次都克隆整个存储库。

上一篇:一个验证简单的例子


下一篇:git拉代码时报错error: RPC failed; curl 56 Recv failure: Connection reset by peer