git-reset VS git-clean之间的区别

时间:2013-10-22 14:34:57

标签: git

究竟有什么区别?

我的目标是在工作树“无变化”时完全恢复到状态 - 没有修改或删除,没有新的未跟踪文件,没有。

我不关心.gitignore-ed文件。

2 个答案:

答案 0 :(得分:5)

git-reset

将当前HEAD重置为指定状态。

例如:git reset --hard HEAD^ - 这将删除顶部提交

git-clean

用于从工作目录中删除未跟踪的文件/目录

答案 1 :(得分:4)

如果您要放弃所有未提交的更改:

git reset --hard head

这将基本上恢复Git知道的最后一个提交状态的所有文件。

如果你想删除Git不知道的所有文件:

git clean -dxf

这将删除所有被忽略或未被跟踪的内容。