将git rm转换为git rm --cached

时间:2016-01-13 21:20:29

标签: git

我正在清理Git仓库中的二进制文件,我有一长串用git rm删除的文件。

考虑到变化的规模(7000多个文件),我现在认为使用git rm --cached代替更为谨慎。

文件处于暂存状态,如何将它们放回磁盘上,同时防止它们出现在git中?

我正在寻找一个git命令来执行此操作,我想避免一些令人讨厌的脚本黑客,我git co然后git rm --cached每个文件。一旦我查看它们,我就不知道我需要再删除哪些,我必须重做我的工作。它是一长串特定的子目录,而不是直接的rm -r *

2 个答案:

答案 0 :(得分:1)

只需提交您的暂存删除,然后您就可以通过git checkout HEAD~1 -- .从历史提交中检索文件,您可以将.替换为您要检索的路径。

答案 1 :(得分:0)

要清理您的回购,您应该使用:
https://rtyley.github.io/bfg-repo-cleaner/

enter image description here

要获取文件,只需检查所需的提交,它就会将文件签出到您的工作目录。