git filter-branch错误:“致命:无效的对象名称HEAD”

时间:2019-06-03 17:00:55

标签: git git-filter-branch

我正在尝试使用git filter-branch命令将两个子文件夹移动到其自己的存储库中。我尝试运行以下命令,并导致致命错误

git filter-branch --prune-empty --subdirectory-filter "adb-*" -- master

错误:

Rewrite 52d9bf5425d940f730ccdad1548b7d957936cd00 (59/59) (55 seconds passed, remaining 0 predicted)
Ref 'refs/heads/master' was deleted
fatal: Not a valid object name HEAD

有人可以告诉我我可能会想念什么吗?

1 个答案:

答案 0 :(得分:0)

  

有没有办法包含多个子文件夹

您可以改用bfg-repo-cleanerhttps://rtyley.github.io/bfg-repo-cleaner/

例如:

# Delete all files named 'id_rsa' or 'id_dsa' :
$ bfg --delete-files id_{dsa,rsa}  my-repo.git

我偶尔使用它,但是在文件夹上尝试过它。
每当我需要删除文件夹时,我都会使用git subtree split这不是优化的解决方案,但可以完成工作。