是否有一个git命令可以为每次提交输出:
- 编号
- 主题
- 它使用路径和大小创建的 blob(如
git ls-tree -l -r <commit>
但仅适用于创建的 blob)
最佳答案
要获取提交(所有和每次提交输出一行):
git rev-list --all --pretty=oneline
然后按空格拆分提交,限制为 2,并获取每个提交 ID 和消息
获取由提交创建的 blob(递归到子目录,显示 merge 提交,检测重命名和复制,不要在第一行显示提交 ID):
git diff-tree -r -c -M -C --no-commit-id <commit-sha>
对每一行进行一点解析并排除其中的一些——我们得到新 blob 的列表和它们的提交路径
最后是获取 blob 大小:
git cat-file --batch-check < <list-of-blob-shas>
还有一次是一些解析
关于Git - 获取他们创建的所有提交和 blob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1314950/