一、追溯,查看提交历史。
git shortlog #查看每个人提交的commit 备注,以及次数。
git log -graph
好用的追责工具git blame。
它可以查看一个文件的每一行的提交记录,想知道这个文件的代码里面每一行是谁提交的都可以查得到。
git blame 【filename】 #显示文件的每一行的提交者。
#假如说现在有一个需求,想查看代码的第6行到第11行是谁提交的:
git blame [filename] -L [6],+[5]
二、在git仓库中搜索。
git grep #在git仓库中以关键字的形式搜索文件,用法和linux系统命令的grep是一样的,下面是用法示例:
git grep [hellotest] #查找在git仓库中所有含有hello字符串的文件。
git grep -n [hellotest] #显示关键字所在文件的行号。
git grep -name-only [hellotest] # 只显示文件名。
git grep -c [hellotest] #查看每个文件有多少个匹配。
and / or:
git grep -e [hello] --and -e [world]
git grep -e [hello] --or -e [world]
在指定tag中搜索:
git grep string [tag]
三、修改提交。
增补提交。
最后一次提交如果有问题,需要修改最后一次的提交,而不是从重新commit产生一个新的提交的话,就可以用--amend参数。
git commit --amend #不会生成新的commit,只修改最后一个commit。
撤销提交。
git revert [SHA1]#将原来的提交撤销。
四、版本回退。
git reset --mixed [SHA1] #将版本回退到工作区。
git reset --soft [SHA1] #将版本回退到暂存区。
git reset --hard [SHA] #回退后直接删除提交。
=============================================