github 个人首页(profile)contribution
2017-05-20 本文已影响270人
SuperBinlin
github个人首页会展示开发者的代码贡献图(如图),直观展示着开发者日复一日的工作量,然而有时候会出现提交的代码反应不到图上去的问题。
代码贡献图据查资料大多都是由于开发者提交代码时的邮箱与github中绑定的邮箱不匹配造成的,如下图,提交的邮箱并不是我的github邮箱,所以导致我的代码贡献图不能正确的反应我的代码提交。
git log解决方案
这是有措施可以挽回的
step1
//使用--bare重新从github克隆你的项目到本地
git clone --bare https://github.com/xxxxx/xxxx.git
step2
//打开终端 并 cd xxxx.git
//在终端中复制如下脚本 更改相应信息
#!/bin/sh
git filter-branch --env-filter '
OLD_EMAIL="旧的Email地址(git log查看)"
CORRECT_NAME="正确的用户名"
CORRECT_EMAIL="正确的邮件地址"
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
//更改完成后按enter执行 执行完成并正确应该如下图所示
正确完成图
step3
//成功后push修改
git push --force --tags origin 'refs/heads/*'
step4
//删除xxxx.git
cd ..
rm -rf xxxx.git
//进入原有xxxx的项目 并且执行拉取代码 把两个不同项目合并必须加上 --allow-unrelated-histories
git pull origin master --allow-unrelated-histories
刷新你的github首页吧
这个项目丢失的记录都回来啦至此!大功告成~