有没有办法自定义混帐的输出?
git log
有一个很好的--format
选项来指定输出的格式。
但git blame
似乎并没有相当的,虽然blame
默认输出是不太人性化。 我想看得更less。
例如,而不是:
5600cab7 js/sidebar/VehicleGrid.js (Rene Saarsoo 2009-10-08 18:55:24 +0000 127) if (x > y) { b5f1040c js/map/monitoring/VehicleGrid.js (Mihkel Muhkel 2010-05-31 07:20:13 +0000 128) return x;
我想拥有:
5600cab7 Rene Saarsoo (1 year ago) 127: if (x > y) { b5f1040c Mihkel Muhkel (5 months ago) 128: return x;
我觉得我可以写一个脚本来parsinggit blame --porcelain
的输出,但是考虑到可怕的默认输出,我觉得有人在那里肯定已经做了些什么。
有任何想法吗? 或者实现这样的脚本的任何提示?
编辑:通过写小脚本来解决它。
你可以使用替代的输出格式: git annotate
或者git blame -c
。
您可以使用--date=<format>
选项(或blame.date
configvariables)更改date的--date=<format>
,其中<format>
是相对,本地,默认,iso,rfc,short之一 。 有关详细信息,请参阅git-blame和git-log手册页。
对我来说,-s标志起作用,因为我需要的只是SHA1标识,之后我会查找提交细节。 一个脚本绝对看起来像矫枉过正。 -s标志在一年前是否可用?
考虑到像Trac或Redmine的Web界面集成了git blame
结果,我想这样的parsing已经完成了。
你可以在这个Redmine Defect 3832中看到这个ruby脚本的例子:
-
git_adapter.rb