在我决定最好不要包含它们之后,我正在尝试清除我在其中添加bower_components和node_modules目录的提交的存储库。按照这里的git-hub说明,我做了适当修改
git filter-branch --force --index-filter \
'git rm -r --cached --ignore-unmatch bower_components node_modules' \
--prune-empty --tag-name-filter cat -- --all
但是我收到了这个错误
fatal: empty ident name (for <@localhost>) not allowed
此问题的所有其他答案都涉及使用git config --global添加您的姓名和电子邮件地址。但是我很久以前就这么做了,并且已经工作多年了。所以在这种情况下答案是不正确的。
我怀疑它与git filter-branch为它正在做的事情创建自己的环境这一事实有关,但我不知道是什么或如何解决它。我尝试添加
--env-filter 'export GIT_COMMITER_EMAIL=my@emailaddress'
在--prune-empty标志之前,但它没有任何区别。
那我怎么能摆脱这个错误?
更新:我在我的存储库中发现了一些使用@localhost提交者详细信息的提交,我希望这与此有关。
答案 0 :(得分:0)
我发现存储库中存在垃圾电子邮件提示,这是错误消息的原因。这很难摆脱,因为遵循这里的指示
https://help.github.com/articles/changing-author-info/
我最后仍然留下了不好的地址,因为有藏匿处和旧的模糊分支意味着坏地址没有被删除。但我最终成功了。
然后按照我上面提到的说明完成了这个过程。我的存储库大小已从615M降至214M