Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 日志命令,用于每个文件的多数贡献,并带有代码度量_Git_Version Control_Code Metrics_Blame - Fatal编程技术网

Git 日志命令,用于每个文件的多数贡献,并带有代码度量

Git 日志命令,用于每个文件的多数贡献,并带有代码度量,git,version-control,code-metrics,blame,Git,Version Control,Code Metrics,Blame,有没有办法让多数参与者(作者)运行Git log命令?我想将其与代码度量工具一起使用,以便能够从本质上显示每个贡献者生成的代码的质量 File Author Cyclomatic Complexity LOC(Additions) LOC(Deletions) Test.js "John Doe" 5 20 12 另一个有趣的观点是能够用 Author Cyclom

有没有办法让多数参与者(作者)运行Git log命令?我想将其与代码度量工具一起使用,以便能够从本质上显示每个贡献者生成的代码的质量

File       Author      Cyclomatic Complexity    LOC(Additions)   LOC(Deletions)
Test.js   "John Doe"            5                     20               12
另一个有趣的观点是能够用

Author   CyclomaticComplexityAverage      LOC Per File   #Files Majority Contributor

James               4                          30                 75
Anne                8                          60                 20
另外,如果有一个Git工具利用microsoftvisualstudio代码分析,使用with-Git-log或Git-bull来获取每个作者的指标,那将是很有趣的

当试图识别弱点或优势以帮助改进团队成员并认可更高的质量时,这将非常有用。它还可以用来跟踪某人随着时间的推移所取得的进步


我知道,代码度量不一定是确定开发人员技能的准确方法,还有许多其他因素可以决定团队成员的贡献/技能。

Git是一个内容跟踪器,虽然每个blob都可以与作者关联,git没有任何条款可以方便地适应您所追求的各种顶级软件指标。因此,您必须为内容构建自己的解析器,否则在一般情况下,您将在试图实现的目标方面遇到固有的困难,因为git对内容的解释和表示与您的目标不一致

另外要记住的是,git可以区分变更的作者和提交者(以及每个blob),这是您必须考虑的,特别是如果代码可以通过项目中的补丁提交的话

忽略作者和提交者之间的区别,您可以直接知道

  • 使用
    git-dull--/path/to/file
    对文件中不同行的作者身份属性(随后可以按单个作者的贡献筛选行)
  • 具有
    git log--/path/to/file
    的单个文件的历史记录(影响该文件的提交)
  • 作者在带有
    git log-p--author=
如果幸运的话,您可以将上述内容与后处理结合起来,为您的工具生成合理的输入,但我怀疑在任何情况下都需要大量的后处理