(注意:Github 使用情况出现在 Stack Overflow 上询问的 GitHub 问题范围内 )
即使在同一函数内移动代码的 PR 在 Github 上显得非常繁重,即使它们不做任何其他事情。我创建了一个非常基本的 PR 来演示这一点:https://github.com/tommyjcarpenter/github_test/pull/1/commits/2afb07ec5c6b56724bd10c6b56386299493bbb43。存储库所做的只是定义两个函数,然后 PR 进行更改以将第一个函数移至第二个函数下方。github 上的差异显示删除了 20 行,添加了 21 行。人们会假设差异可以显示为一个微不足道的“代码移动”。
现在想象一下,它有更多的功能和更多的琐碎代码移动。
看来 git 本身能够检测到此类更改:Using Git diff to detector code moving + How to use diff options
那么,有没有一种方法可以替换 diffing 算法,让这样的 PR 看起来不那么繁重呢?github 使用它自己的内部算法还是使用您的默认比较算法?
(编辑:这似乎也使 Github 上的帐户级贡献有点误导:只是移动代码的人可能会在存储库中进行大量添加和删除,从而给人留下他们是大型贡献者的印象,而实际上他们没有贡献任何功能)