当尝试从 bitbucket 移动到 github 时,我在其中一次提交中遇到了致命错误:
error in commit d8b1774aa7bd98c6494a1e31acef943d0e0cbf03: missingSpaceBeforeDate: invalid author/committer line - missing space before date
cat-file
显示:
author john <[email protected]>removed backup files. Modified <> 1397201439 +0200
committer john <[email protected]> 1397201439 +0200
如何修改此提交并添加缺失的空间?
解决了问题:
git filter-branch --env-filter \
'if [ $GIT_COMMIT = d8b1774aa7bd98c6494a1e31acef943d0e0cbf03 ]
then
export GIT_AUTHOR_NAME="John"
export GIT_AUTHOR_DATE="Fri, 11 Apr 2014 07:30:39 +0000"
export GIT_COMMITTER_DATE="Fri, 11 Apr 2014 07:30:39 +0000"
export GIT_AUTHOR_EMAIL="[email protected]"
fi' --tag-name-filter cat -- --branches --tags
有同样的错误。通过删除与有问题的提交相关的标签(无论如何都不需要标签)然后镜像存储库来解决这个问题。
git tag -d TAGNAME
我能够使用以下命令列出有问题的提交:
git fsck