GitMessage过滤与Git提交的邮件分类脚本

最近在对Freescale i.MX6 kernel代码进行一些对比的时候,写了两个内容类似的简单脚本。共参考。 脚本放在了bitbucket的snippets中:GitCommitFilterAndSorter, 里面有两个文件。两个脚本都需要传入两个hashID,作为git 起点与终点,即from与util。 CommitMsgFilter.sh 这个脚本就是将Commit Message是以”ENGR”开头的条目skip掉,然后output出其他的。ENGR是freescale官方补丁Commit Message的开头,因此这个脚本其实是为了找出非Freescale的BSP 补丁。 例如将这个脚本拷贝到了imx6的kernel目录之后,可以使用类似下面的命令来查看非BSP提交,并去掉一些Merge branch与Merge tag的提交:

得到的结果类似如下:

  CommitMsgSort.sh 这个脚本按照提交者的邮件进行分类,将各种的提交记录到以邮件地址命名的文件中,这样子可以统计出开发团队中各自的提交量。例如将脚本下载到了内核目录下后,可以使用类似下面的命令来获取大家的提交数量:

Continue reading »