【发布时间】:2016-12-29 09:13:14
【问题描述】:
您能告诉我如何撤消自上次提交以来所做的所有更改,删除任何更新的内容并返回到上次提交?
git checkout df60bb 或 git reset HEAD --hard 都没有工作。在这两个命令之后,至少有一个不是上次提交的一部分的文件(RoR 迁移文件)保留下来
谢谢
【问题讨论】:
-
定义“都不起作用”。
您能告诉我如何撤消自上次提交以来所做的所有更改,删除任何更新的内容并返回到上次提交?
git checkout df60bb 或 git reset HEAD --hard 都没有工作。在这两个命令之后,至少有一个不是上次提交的一部分的文件(RoR 迁移文件)保留下来
谢谢
【问题讨论】:
首先,回到项目的根目录。然后,做
git reset HEAD .
git checkout -- .
这将取消暂存当前暂存的所有更改,然后撤消对跟踪文件的任何未暂存更改。要删除未跟踪的文件,请执行以下操作:
rm $(git ls-files --others --exclude-standard)
它将找到所有文件,然后将它们进行外壳扩展以进行删除。
还应该注意的是,如果您有正在生成的文件,最好将它们添加到您的.gitignore 文件中,这样您就不必经常删除他们。
【讨论】: