我想看看我删除调试代码的缩小是否有效,或者它停止工作我无法判断,因为使用了大约 3 个框架并且代码很容易超过 10k 行。但我认为它在某个时候起作用了。所以我想查看过去 10 次左右提交的文件大小,看看文件大小是否有巨大变化
也许是一个脚本,它获取文件大小、要返回的提交次数并打印从最近到旧的大小。
您需要添加错误检查,并且可能不需要相对路径,但您可以执行以下操作:
$ show_size() { git rev-list -10 HEAD |
while read sha; do git show "$sha:./$1" | wc -c; done; }
您可能需要更多信息;例如:
show_size() { git rev-list -10 HEAD |
while read sha; do
printf "%s: size %dn" "$(git show -s --format=%aD $sha)"
"$(git show "$sha:./$1" | wc -c)";
done; }
但是,与其检查最后 10 次提交,您可能只想查看文件大小何时更改:
show_size() {
git rev-list HEAD | while read sha; do
printf "%s: size %dn" "$(git show -s --format=%aD $sha)"
"$(git show "$sha:./$1" | wc -c)";
done | awk '$NF!=a; {a=$NF}'
}
git log -10 --pretty='%H:path/to/it' | git cat-file --batch-check
将获取签出历史记录中最近 10 个提交中的path/to/it
大小,添加--first-parent
以避免搜索合并历史记录,-- path/to/it
仅打印(和计数(触及该路径的提交。