【GIT】移除Git历史文件和改写提交者

移除git历史

git filter-branch --index-filter 'git rm -rf --cached --ignore-unmatch {{文件相对路径,不要保留花括号,例如.idea/a.xml}}' HEAD

改写提交者

git filter-branch --env-filter '
OLD_EMAIL="your-old-email@example.com"
CORRECT_NAME="Your Correct Name"
CORRECT_EMAIL="your-correct-email@example.com"
if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]
then
    export GIT_COMMITTER_NAME="$CORRECT_NAME"
    export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"
fi
if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ]
then
    export GIT_AUTHOR_NAME="$CORRECT_NAME"
    export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"
fi
' --tag-name-filter cat -- --branches --tags
posted @ 2024-05-16 11:22  小小记录本  阅读(6)  评论(0编辑  收藏  举报