【发布时间】:2022-06-11 04:08:26
【问题描述】:
目标
我正在用 Python 构建一个 git stats 脚本,它只能访问历史 git diff 补丁,所以基本上是文件 like this
diff --git a/README b/README
index 980a0d5f..fef29374 100644
--- a/README
+++ b/README
@@ -1 +1,3 @@
Hello World!
+
+Hello planet! - DD
\ No newline at end of file
我到底想要什么?
- 将 git diff 文件列表作为输入
- 计算每个差异文件中更改(可选)、添加和删除的行数
- 总结一下
- 打印“添加的总行数 = X,删除的总行数 = Y”等。
约束
运行此脚本的系统无法访问 git 存储库,也没有安装 git - 引入了一个有趣的复杂性。 ????
我对通过 Python 访问 API 或编写代码来手动计算事物没有任何问题。我唯一的问题是我上面提到的。
其他来源
我查过了,所以我知道关于这个主题有很多类似的问题。我只是在 Python 中找不到我想要的东西,而不是直接在存储库中使用 git...(如果有人能指出我的解决方案,很高兴关闭它)
那么,有什么想法吗?我假设我可以手动解析每个 diff 文件并对其进行总结,但我希望能从 git 魔术师那里获得灵丹妙药!
【问题讨论】:
-
“git 魔术师”会告诉你使用
git,而不是从头开始编写代码。 -
@Nic3500 我猜这是真的。 :)
标签: python linux git diff script