我希望限制git-show和/或git-log --patch的补丁输出,这意味着,如果提交的补丁比X字节长,我不想让它返回。这有可能吗?
发布于 2018-09-07 07:57:55
也许--log-size是你的朋友:
-原木尺寸 在每次提交的输出中包含一行“日志大小”,其中是该提交消息的长度(以字节为单位)。 旨在通过允许从git日志输出读取日志消息的工具预先分配空间来加快它们的速度。
然后,可以根据提交的日志大小对输出进行筛选。为此您将需要一个自己的shell脚本。
示例输出:
commit 552904c8e49c53a690dc14d848b5517f3995be49
log size 137
Author: XXXXXXXXX XXXXXXX <YYYYYYY@ZZZZZZZZZ.com>
Date: Thu Jul 19 11:31:25 2018 +0200
asd dziprecowss as diürtproject submodule发布于 2018-09-07 09:27:31
Git命令没有这样的选项。可以使用bash脚本:
function foolog(){
SIZE=$1
for commit in `git log --pretty=%H`;do
git show $commit --pretty="" | dd |& tail -1 |
if [[ `grep -oe '^[0-9]*'` -le $SIZE ]];then
git show $commit
fi
done
}如果foolog 1200打印的diff大小不大于1200个字节,则提交。
https://stackoverflow.com/questions/52217344
复制相似问题