有没有办法获得发生的提交列表,比如说在09:00到17:00,以及他们的时间?
我唯一能想到的是将输出发送到文件,然后尝试解析它......
答案 0 :(得分:2)
我认为它看起来像git log --after="2014-01-05 09:00" --before="2014-01-05 17:00"
。
请参阅此处的参考资料:http://git-scm.com/book/en/Git-Basics-Viewing-the-Commit-History
答案 1 :(得分:2)
嗯,实际上尤金非常接近你想要的。试试这个:
git log --after="09:00" --before="17:00"
省略这一天应该按预期工作。这会为您提供原始输出,如果您需要不同的输出,请尝试git log --pretty=tformat:"%C(cyan)%ad%x08%x08%x08%x08%x08%x08%x08%x08%x08 %C(bold red)%h %C(bold blue)%<(22)%ae %C(reset)%s"
或为git formatting log
创建自己的Google。
我使用git logs between hours和git see daily logs在Google上进行了简短的搜索,如果您想要更天真的话,可以获得更高级的功能和输出。
答案 2 :(得分:0)
我最终使用以下Git命令进行测试:
git log --pretty=format:'%h|%C(green)%aN%C(reset)|%C(yellow)%ae%C(reset)|%C(cyan)%ad%C(reset)|%s'
然后,我将其用于格式化为易于阅读和解析的输入文件:
git log --pretty=format:'%H|%aN|%ae|%ad|%s' > some_file.txt
最终决定继续执行以下操作,输出一个可以轻松反序列化为POCO的JSON:
log --date=iso --pretty=format:'{\"ShortHash\":\"%h\",\"Name\":\"%an\",\"Email\":\"%ae\",\"Date\":\"%ad\",\"Subject\":\"%s\"}'
对于&#34; smarts&#34;我已经结束了在输出文件上面运行一个linqpad脚本,工作首当其冲:
bool BetweenBusinessHours(string anHour, string aStart = "08:30", string anEnd="17:00") {
return (anHour.CompareTo(aStart) > 0)
&& (anHour.CompareTo(anEnd) < 0) ;
}
bool DuringWeekend(string aShortDay) {
return aShortDay.Equals("Sat")
|| aShortDay.Equals("Sun") ;
}