【工作笔记0023】修改已提交的 git comments 的作者信息(Changing author info)

最近想把本地的代码库上传到github上,结果上传完毕后才发现作者莫名其妙变成了其他人

追究原因,发现我用的 smartgit 工具,当初在配置 Comment 信息时,填写了正确的 username,但却随便填写了一个 useremail为“888888@qq.com”,于是上传到github后,就给我匹配成了github上使用“888888@qq.com”邮箱注册的用户“nuo503”了,当时就郁闷了...................

后来查看github的官方文档,发现有可以修改已提交更改的作者信息的方案,这里是官网的链接:Changing author info

我将其实践了过后,发现可行,于是整理出以下几个步骤:

1.找到当初安装 git 软件时的目录,找到 git-bash.exe 并使用管理员方式运行。

2.从远程 github 上 clone 一个临时的库到本地,运行以下命令即可:

git clone --bare https://github.com/你的github账户/你的代码库名.git


3.运行上述命令后,会在 git-bash.exe 相对目录下新建 “你的代码库名.git” 的临时库根目录,运行以下命令进入临时库根目录:

cd  你的代码库名.git

4.修改以下命令中的对应参数,并运行该命令:

git filter-branch --env-filter '
an="$GIT_AUTHOR_NAME"
am="$GIT_AUTHOR_EMAIL"
cn="$GIT_COMMITTER_NAME"
cm="$GIT_COMMITTER_EMAIL"
if [ "$GIT_COMMITTER_EMAIL" = "[Your Old Email]" ]
then
    cn="[Your New Author Name]"
    cm="[Your New Email]"
fi
if [ "$GIT_AUTHOR_EMAIL" = "[Your Old Email]" ]
then
    an="[Your New Author Name]"
    am="[Your New Email]"
fi
export GIT_AUTHOR_NAME="$an"
export GIT_AUTHOR_EMAIL="$am"
export GIT_COMMITTER_NAME="$cn"
export GIT_COMMITTER_EMAIL="$cm"
'
注意:不要遗漏掉 单引号

5.运行以下命令,强制将本地修改 push 到远程 github 上(建议事先备份代码库):

git push --force --tags origin 'refs/heads/*'


6.运行以下命令,清除本地临时库即可:
cd ..
rm -rf repo.git


最后,给大家看看我成功修改作者信息后的截图:


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值