Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Git中取消删除文件?_Git - Fatal编程技术网

如何在Git中取消删除文件?

如何在Git中取消删除文件?,git,Git,在Git中使用rm命令进行测试时,我最终从驱动器中删除了所有文件 导致这种情况发生的命令如下: git rm . -r 现在,我的文件系统只包含目录,而我以前添加到Git的所有文件都丢失了 如何从Git存储库还原所有文件?运行Git reset(软重设或硬重设): git重置-软 git重置-硬 编辑:显然仅限硬操作。运行git reset(软重置或硬重置): git重置-软 git重置-硬 编辑:显然只是-很难做到这一点。git checkout 通常,如果这种情况再次发生在您身上,但情况略

在Git中使用rm命令进行测试时,我最终从驱动器中删除了所有文件

导致这种情况发生的命令如下:

git rm . -r
现在,我的文件系统只包含目录,而我以前添加到Git的所有文件都丢失了

如何从Git存储库还原所有文件?

运行Git reset(软重设或硬重设):

git重置-软

git重置-硬

编辑:显然仅限硬操作。

运行git reset(软重置或硬重置):

git重置-软

git重置-硬

编辑:显然只是-很难做到这一点。

git checkout

通常,如果这种情况再次发生在您身上,但情况略有不同,例如仅删除了一些文件,您仍然可以使用相同的模式:

git签出-

在这种情况下,git status的输出还将帮助您提供可能的解决方案

警告:对于这种特殊情况,您也可以运行git reset-hard,但是上面的解决方案看起来更干净一些。不要如此轻易地习惯这个命令,因为将来可能会意外地删除修改。

git checkout

通常,如果这种情况再次发生在您身上,但情况略有不同,例如仅删除了一些文件,您仍然可以使用相同的模式:

git签出-

在这种情况下,git status的输出还将帮助您提供可能的解决方案


警告:对于这种特殊情况,您也可以运行git reset-hard,但是上面的解决方案看起来更干净一些。不要如此轻易地习惯此命令,因为将来可能会意外地删除修改。

如果没有未提交的更改,可以按以下顺序运行这些命令:

git reset .
git checkout .

如果没有未提交的更改,可以按以下顺序运行这些命令:

git reset .
git checkout .


看起来这种情况发生在@jev:之前的某个人身上,考虑到那里流行的答案及其质量,我不确定该线程是否应该升级。@LaszloPapp:我不同意;如果答案在规范上是正确的,那么应该将其提升并链接到。这里的答案并不比另一个帖子中的答案更新。@Makoto:让我们同意不同意。我相信选定的和最受欢迎的答案质量很低,在改进之前不应提升IMHO。看起来这发生在@jev:之前的某个人身上,考虑到其中的流行答案及其质量,我不确定是否应该提升该线程。@LaszloPapp:我不同意;如果答案在规范上是正确的,那么应该将其提升并链接到。这里的答案并不比另一个帖子中的答案更新。@Makoto:让我们同意不同意。我相信被选中的、最受欢迎的答案质量很低,在改进之前不应该提升IMHO。选民:介意评论一下答案有什么问题吗?哦,现在好多了。虽然我会提到git reset-hard也会覆盖您所做的任何更改。我已经在警告中指出了这一点。我不认为在用户运行git-rm之后会有什么不同-r@Makoto还有什么变化?你是那个投了反对票的聪明人吗?@konsolebox:最好不要在没有警告的情况下推广一个危险的操作,因为用户很容易会在超出其预期范围的情况下被卡住。downvoter:介意评论一下答案有什么问题吗?哦,现在好多了。虽然我会提到git reset-hard也会覆盖您所做的任何更改。我已经在警告中指出了这一点。我不认为在用户运行git-rm之后会有什么不同-r@Makoto还有什么变化?你是那个投了反对票的聪明人吗?@konsolebox:最好不要在没有警告的情况下推广一个危险的操作,因为用户很容易被那些超出预期范围的操作卡住。