如何撤消上次提交后对目录所做的所有更改,包括删除添加的文件、重置修改的文件和添加回已删除的文件?
当前回答
如何撤消上次提交后对目录所做的所有更改,包括删除添加的文件、重置修改的文件和添加回已删除的文件?
您可以通过以下命令撤消对跟踪文件的更改: git重置头——硬 您可以删除未跟踪的文件: Git clean -f 您可以删除未跟踪的文件和目录: Git clean -fd 但是您不能撤销对未跟踪文件的更改。 您可以删除被忽略和未跟踪的文件和目录 Git clean -fdx 但是不能撤消对被忽略文件的更改。
您也可以设置清洁。requireForce为false:
git config --global --add clean.requireForce false
在使用git clean时避免使用-f(——force)。
其他回答
首先,重置所有更改
这将撤销您对跟踪文件所做的任何更改,并恢复已删除的文件:
git reset HEAD --hard
其次,删除新文件
这将删除自上次提交以来添加的所有新文件:
git clean -fd
由于.gitignore而未被跟踪的文件将被保存;它们不会被移除
警告:使用-x代替-fd会删除被忽略的文件。你可能不想这么做。
如何撤消上次提交后对目录所做的所有更改,包括删除添加的文件、重置修改的文件和添加回已删除的文件?
您可以通过以下命令撤消对跟踪文件的更改: git重置头——硬 您可以删除未跟踪的文件: Git clean -f 您可以删除未跟踪的文件和目录: Git clean -fd 但是您不能撤销对未跟踪文件的更改。 您可以删除被忽略和未跟踪的文件和目录 Git clean -fdx 但是不能撤消对被忽略文件的更改。
您也可以设置清洁。requireForce为false:
git config --global --add clean.requireForce false
在使用git clean时避免使用-f(——force)。
在这种情况下有两个命令可以使用,
根>git重置-硬头~1
根>git push -f
更多git命令请参考本页
推荐文章
- RPC失败;卷度传输已关闭,剩余未完成的读取数据
- 我应该在.gitignore文件中添加Django迁移文件吗?
- 错误:您对以下文件的本地更改将被签出覆盖
- Git rebase—即使所有合并冲突都已解决,仍然会继续报错
- 在Git中,我如何知道我的当前版本是什么?
- 跟踪所有远程git分支作为本地分支
- 自定义SSH端口上的Git
- git如何显示不存在于.gitignore中的未跟踪文件
- Git错误:遇到7个文件应该是指针,但不是
- GitHub克隆与OAuth访问令牌
- 移动(或“撤销”)最后一个git提交到非暂存区域
- 我可以在GitHub上对要点进行拉请求吗?
- Hg:如何做一个像git的rebase
- 如何丢弃远程更改并将文件标记为“已解决”?
- 如何查看远程标签?