这段时间一直在自学前端框架,作了不少小东西,眼看着本身的github也在不断的变绿,没想到人的知足感居然被这一面墙的绿格子所驯服前端
满屏的深绿估计是不少人炫耀的资本,本人不是什么大牛,不过本身辛辛苦苦一行一行调试好了,最后连这点炫耀的记录都不给显示!!git你要翻天啊!git
原本想着就这几天的,没了本身认倒霉,但是今天一搜索,没想到是能够恢复的,太NM的神奇了,一下是我查询到的恢复github commits记录及统计的办法github
首先要分析为何你的提交记录没有被github识别:shell
进行Commits的用户没有被关联到你的Github账号中。bash
不是在这个版本库的默认分支进行的Commit。前端框架
这个仓库是一个Fork仓库,而不是独立仓库。框架
我估计不少人和我同样都是第一个缘由,初用github远程管理代码和那些常常更换使用机器的猿极有可能用错帐户名和邮箱,其实我在修改本身的原来的用户名和邮箱是就发现,工具
当初设置的用户名居然是本身的密码。。。。用户名是邮箱,可是为何平时能够正常提交呢。。。想一想才反应过来,我都不用bash去push,而是在git的图形工具里进行diff和push,spa
那就难怪了,在GUI里,通常都是默认提交时输入邮箱和密码的,这里又有一个坑,我每次都是在用户那一个alert里输入本身的邮箱,而后是密码,这里要说,若是你输入邮箱,调试
就必定要注意你的这个提交帐户和简历repo的帐户名要关联,否则够呛了,你辛辛苦苦改了几个月发现那个炫富的绿墙里什么鬼都没有,呵呵
至于下面的两个缘由应该在多人合做开发中会遇到吧
下面是解决的办法:
这是github官方的办法,全英文
https://help.github.com/articles/changing-author-info/
而后我一直在疑惑里面说的那个script在哪里,后来在另一个大侠那里找到答案了。。。那块被墙了。。。对,那块代码在天朝看不到
贴出来吧:(请按说明修改5,6,7行的内容)
1 #!/bin/sh 2 3 git filter-branch --env-filter ' 4 5 OLD_EMAIL="错误记录里的邮箱" 6 CORRECT_NAME="github帐户名" 7 CORRECT_EMAIL="正确的帐户邮箱" 8 9 if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ] 10 then 11 export GIT_COMMITTER_NAME="$CORRECT_NAME" 12 export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL" 13 fi 14 if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ] 15 then 16 export GIT_AUTHOR_NAME="$CORRECT_NAME" 17 export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL" 18 fi 19 ' --tag-name-filter cat -- --branches --tags
而后在bash里执行以下代码,user替换成你的github帐户名,repo.git替换成你的repo的名字
1 git clone --bare https://github.com/user/repo.git 2 cd repo.git
以上执行后,把上面的script新建成一个.sh的shell脚本文件存到repo.git这个目录里,而后在bash里执行它,就是在目录下找到对应的test.sh,而后回车的意思
而后会出现执行的提示,以后只要不报错,就自动结束了,以后
1 git push --force --tags origin 'refs/heads/*
最后把这个临时down下来的repo目录删掉就行,一切大功告成
再去看的你的github首页,丢失的绿格子都回来了。