git reset –hard HEAD留下未跟踪的文件
当我运行git reset --hard HEAD
,它应该重置为你所拉取的原始版本,据我所知。 不幸的是,它留下了文件,作为一个git status
显示未跟踪文件的大列表。
你怎么告诉git“把它回到原来的最后拉,什么都没有,没有什么less”?
你必须使用git clean -f -d
来删除工作副本中未跟踪的文件和目录。
如果你有文件,你仍然想保持:
git clean -di
会做一个交互式的清理,让您只能删除不再需要的文件/目录。
git reset --hard && git clean -dfx
或者,zsh提供了一个“gpristine”别名:
alias gpristine='git reset --hard && git clean -dfx'
这真的很方便
用户交互方式:
git clean -i -fd Remove .classpath [y/N]? N Remove .gitignore [y/N]? N Remove .project [y/N]? N Remove .settings/ [y/N]? N Remove src/com/amazon/arsdumpgenerator/inspector/ [y/N]? y Remove src/com/amazon/arsdumpgenerator/manifest/ [y/N]? y Remove src/com/amazon/arsdumpgenerator/s3/ [y/N]? y Remove tst/com/amazon/arsdumpgenerator/manifest/ [y/N]? y Remove tst/com/amazon/arsdumpgenerator/s3/ [y/N]? y
-i用于交互式
-f强制
-d用于目录
-x用于忽略的文件(如果需要添加)
注意: 添加-n或–dry-run只是检查它会做什么。
您可能在某个时候进行了软重置,您可以通过这样做来解决这个问题
git add . git reset --hard HEAD~100 git pull