* 你是这个仓库的协做者,或者是这个版本库的拥有组织中的一员
* 你fork过这个仓库
* 你对这个仓库发起过pull request或者issue
* 你对这个仓库标记了Star复制代码
注意:私有库的贡献仅仅对私有库成员显示复制代码
你能够在你的本地repo里用git log
命令查看commit
记录上的我的邮箱是否正确,像我就是由于以前切换到Mac平台开发以后用户名没有配置,因此我以后的commit记录上的邮箱一直是mrchang,因此Github就会认为这些commits都不是你提交的!
git
然而这也并非没有补救办法的,Github官网上就有给出详细的补救过程,英语好的同窗请自行移步 Changing author info,下面是我翻译自Github Help的简要步骤:github
Mac、Linux下打开Terminal,Windows下打开命令提示符(command prompt)复制代码
给你的repo建立一个全新的clone复制代码
git clone --bare https://github.com/user/repo.git复制代码
cd repo.git复制代码
复制粘贴脚本,并根据你的信息修改如下变量:旧的Email地址,正确的用户名,正确的邮件地址复制代码
`
#!/bin/sh复制代码
git filter-branch --env-filter '复制代码
OLD_EMAIL="旧的Email地址"复制代码
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`
1. 按 Enter键 执行脚本。复制代码
2. 用git log命令看看新 Git 历史有没有错误复制代码
3. 把正确历史 push 到 Github复制代码
git push --force --tags origin 'refs/heads/*'复制代码
4. 删掉刚刚临时建立的 clone复制代码
cd ..复制代码
rm -rf repo.git复制代码
git config --global user.email "你的邮件地址"
git config --global user.name "你的Github用户名"