在一次旧提交中,添加了一个大文件。在多次提交之后,它被删除了,但是它停留在历史记录中,因此我试图通过以下命令从历史记录中删除该文件:
git filter-branch -f --index-filter "git rm -rf --cached --ignore-unmatch src/main/resources/embed/linux/mongodb-linux-x86_64-3.2.0.tgz" --pru-tag-name-filter cat -- --all
该命令的结果如下:
Rewrite 9e96a248322ba6e85efde1e41498db0d41c1ee79 (3026/5151) (13917 seconds passed, remaining 9773 predicted) rm 'src/main/resources/embed/lib-linux-x86_64-3.2.0.tgz'
Rewrite 070cbe84ad8e1bc8f1ccec5294b600218d714e30 (4123/5151) (18963 seconds passed, remaining 4728 predicted) rm 'src/main/resources/embed/lib-linux-x86_64-3.2.0.tgz'
Rewrite 1f5604b332d6d48169fa398b60fc5ac42124d63d (5151/5151) (24005 seconds passed, remaining 0 predicted)
Ref 'refs/heads/master' was rewritten
Ref 'refs/remotes/origin/master' was rewritten
....正如我从输出中了解到的那样,文件已从提交9e96a248322ba6e85efde1e41498db0d41c1ee79中删除,因此我检查如下:
git checkout 9e96a248322ba6e85efde1e41498db0d41c1ee79
ls src/main/resources/embed/linux/结果是mongodb-linux-x86_64-3.2.0.tgz。所以这个文件在历史上仍然存在。我做错了什么?我怎么才能随心所欲地移除它?
https://stackoverflow.com/questions/54096687
复制相似问题