【问题标题】:total original lines of code from entire git repository history来自整个 git 存储库历史的总原始代码行
【发布时间】:2020-07-27 19:39:18
【问题描述】:

有没有办法统计 git 存储库中添加/删除/修改的总行数?许多帖子通过分析其中的文件给出了“该项目在某个提交时有多少个位置”的答案,它并没有让人感觉在整个过程中尝试、放弃和改变了多少不同的事情项目的生命周期。并且仅仅检查每一个提交并说明并总结这也没有意义,因为从提交到提交通常有相当多的冗余。

【问题讨论】:

  • 由于您不想要其中一种明显的行为,因此搜索一种可以满足您的需求并使用它的算法可能会有所帮助。一般来说,很难定义什么是有意义的变化,这似乎就是你在这里所要求的。

标签: git code-metrics


【解决方案1】:

无法在 repo 级别考虑某些内容,但以下内容可以在 branch 级别工作:

选项 1

git diff --shortstat $(git rev-list --max-parents=0 HEAD) @

示例输出

9 files changed, 273 insertions(+), 4 deletions(-)

git diff --numstat $(git rev-list --max-parents=0 HEAD) @

示例输出(详细说明每个文件的行插入行删除):

10      4       rest-api.ps1 => auditlog.ps1
15      0       azlabshow.ps1
34      0       create-pr.ps1
26      0       get-build-time.ps1
25      0       getchangesets.ps1
42      0       listreleases.ps1
40      0       listusers-csv.ps1
43      0       merge-refs.ps1
38      0       testplans(outcome).ps1

通过将 HEAD (@) 与初始提交进行比较来使用 git diff。使用 bash。

【讨论】:

    猜你喜欢
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 2017-06-23
    • 1970-01-01
    • 1970-01-01
    • 2012-03-29
    • 2019-05-29
    • 2012-10-27
    相关资源
    最近更新 更多