您的位置:首页 > 其它

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

2017-07-17 17:19 239 查看
最近想把本地的代码库上传到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[/code] 
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
最后,给大家看看我成功修改作者信息后的截图:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: