Git - 如何返回最后一次提交并删除所有未提交的文件?

Posted

技术标签:

【中文标题】Git - 如何返回最后一次提交并删除所有未提交的文件?【英文标题】:Git - How to return to the last commit and delete all files not commited? 【发布时间】:2013-02-13 16:53:39 【问题描述】:

我需要返回到上次提交状态。我已经完成了 Git Reset Hard,但是当我对代码进行新的更改并尝试提交时,我发现我不想在 repo 中拥有的所有文件都在那里。

如何进行重置以删除未提交的文件?

最好的问候,

【问题讨论】:

试试这个***.com/questions/8903953/… 【参考方案1】:

git reset --hard 会让你回到最后一次提交,丢失你对已经提交的文件所做的任何更改。

git clean -xdf 然后将删除您已创建但尚未提交给 git 的所有文件和目录。

同时运行这两个程序应该会让您回到干净的状态。

【讨论】:

您好,感谢您的回复。它不起作用,文件在那里。还有其他线索吗?最好的问候, git clean -fgit status 的输出是什么?【参考方案2】:

好的,你有:

git clean -x:删除不受版本控制的文件,包括被忽略的文件 git reset --hard: 转到提到的提交,检查文件,就像它们记录在其中一样

同时使用两者应该可以满足您的需求,否则,这是一个错误。

【讨论】:

【参考方案3】:

如果您想删除未被跟踪的文件,请尝试以下操作:

git add .
git reset --hard

我认为有更合适的方法,但现在想不出。有的话会发的。

【讨论】:

【参考方案4】:

git checkout -- .(命令末尾有一个点)将恢复工作目录中的所有更改。

【讨论】:

以上是关于Git - 如何返回最后一次提交并删除所有未提交的文件?的主要内容,如果未能解决你的问题,请参考以下文章

我在 GIT 分支中只有一个提交。如何删除那个提交?

如何删除未使用的 git 远程提交?

git如何回滚最后一次提交

如何在保留更改的同时撤消最后一次 git 提交? [复制]

Git的基本使用 -- 文件的添加撤销对比删除

idea本地代码未提交,更新后本地被删除了