【发布时间】:2019-07-04 22:38:12
【问题描述】:
我们厌倦了掉毛。所以我们想在我们的项目中使用black。不幸的是,它几乎改变了我们项目中的每一行,这将使我们失去大部分的作者信息。我们在 pycharm 中使用 annotate 或 git blame 很多来确定在查看特定代码段时与谁交谈。在一次提交中更改大量文件时如何保留这些信息?
编辑:由于这是this question 的复制品,我想重点关注“尽可能好”的方法。
让我们假设 lint 提交是由人工(但已知)作者创建的,因此用作标志。那么是否可以创建一个类似git blame 的输出,显示所有作者因为这个关键的 lint 提交以及任何 previous 在该提交中更改的行的作者?
我意识到这不适用于拆分/合并的线路,但它至少提供了一种更快的方法来限制潜在人员与 1、2、3 人交谈的范围。
【问题讨论】:
-
它不能,在 git 中没有什么可以帮助你。最后一个运行重新格式化程序的人将获得所有已修改行的“所有权”。然而,黑色会改变一切吗,一直?
-
我认为答案很可能是“它不能在所有情况下”,考虑一下黑色何时折叠不同作者的两行。
git log -G ...可能是开始使用的好工具 -
不,但当然,一个拥有大约 100k+ 行代码的项目现在将由一位作者主导,即使该作者是像
lint bot这样的人为作者,以表明实际上还有其他人“背后”那条线。
标签: git lint git-blame python-black