我会从git log --since="1 week ago" --until="now" 和customize it to your heart's content 开始。
例子:
git log --since="1 week ago" --until="now" --format="%an,%ct,%s" > weekly-git-log.csv
您并没有非常具体地说明要在 CSV 文件中存储的内容,所以我给您一个非常笼统的答案,让您自己填写详细信息。
编辑:
如果您想添加/删除行,您将不得不变得更花哨并使用 bash 脚本:
#!/bin/bash
IFS=$'\n'
DATA=(`git log --since="1 week ago" --until="now" --format="%ct,%an,%s,"`)
LINES=(`git log --since="1 week ago" --until="now" --pretty=tformat: --shortstat | gawk '(NF > 0){ printf "%s,%s\n",$1,$4 }' -`)
i=0
while [ $i -lt ${#DATA[@]} ]; do
echo "${DATA[$i]}${LINES[$i]}"
i=$[i + 1]
done
我在消息之后添加/删除了行,因为它更容易在脚本中执行(我不喜欢 bash)。这应该是你想做的事情的一个很好的基础。 (调用./script.sh >file.csv输出到文件)
请注意,提交消息中的逗号会破坏您的 csv 文件,我会将 --format 中的逗号更改为无法在键盘上定期输入的一些晦涩字符,擦掉消息中的所有逗号,然后用逗号代替那个晦涩的字符。
或者,如果您不需要该消息,也可以取消格式中的%s。