- flow
初始化为空仓库
# clone 仓库,然后新建空白分支
git checkout --orphan new_branch
# 删除所有文件,然后添加
git add -A
# 提交
git commit -am "Initial commit"
# 强制删除原 master 分支
git branch -D master
# 重命名之前新建的分支
git branch -m master
# 推送到远程仓库
git push -f origin master
修改历史提交信息
修改邮箱
#!/bin/sh
git filter-branch --env-filter '
OLD_EMAIL="旧邮箱"
CORRECT_EMAIL="新邮箱"
if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]
then
export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"
fi
if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ]
then
export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"
fi
' --tag-name-filter cat -- --branches --tags
官方推荐方法: git-filter-repo