如何从删除的文件夹中“删除”文件?

时间:2019-04-03 20:29:35

标签: git gitlab

我正在使用git remove git rm。我犯了一个简单/愚蠢的错误:手动删除一个包含所有文件的文件夹,之前是我使用的git rm

现在,我有超过15个文件要从存储库中删除,但不键入。

有没有办法做到这一点?

git status

deleted:    Literature/abc.md
deleted:    Literature/acdf.pdf
deleted:    Literature/dsfsdf.pdf
deleted:    Literature/dfgdfs.pdf
deleted:    Literature/sgadfgaa.md
deleted:    Literature/sdsds.pdf
deleted:    Literature/sddvasds.rmd
deleted:    Literature/ddsds.md
deleted:    Literature/fsdfsdsd.png

3 个答案:

答案 0 :(得分:1)

是的,它们已从您的 worktree 中删除,但是这些文件已保存在上一修订版*中,因此您只需还原这些文件,就像它们在最后一次提交时一样:

git checkout -- full/path/to/Literature/

然后首先按照您的预期rm

* (除非这些是新添加的文件,但您没有这样说)

答案 1 :(得分:1)

如果当前没有其他更改,并且确定,则需要恢复到上一次提交状态,

您可以使用git reset --hard,将HEAD移至上次提交的哈希,并在提交后丢弃所有本地更改

或者,更安全的方法是先执行git reset {path to your deleted folder},使文件暂存以进行下一次提交,然后按照@RomainValeri的建议进行git checkout -- {path to your deleted folder}

答案 2 :(得分:0)

您可以使用命令

git rm -r --cached 

有关更多详细信息,请点击链接Bit Bucket Documentation