您能否向 svn diff 添加注释/类似责备的信息,以便对于每个更改的行,它都包含更改了该行的用户和修订版?
例如,比较修订版 8-10 的 annotate-diff 可以输出如下内容:
9 user1 - some line that user1 deleted in revision 9
10 user2 + some line that user2 added in revision 10
Run Code Online (Sandbox Code Playgroud)
上下文,它周围没有改变的线条,也可以包括或不包括在内,并不重要。
这不仅仅是“快速”编写一个结合 svn diff 和 svn annotate 输出的 shell 脚本的问题。例如 annotate 永远不会显示谁删除了一行。这也不是对过去的修订进行注释的问题:我们对最初添加被删除的行的人不感兴趣(这不是“导致”差异的人),我们想知道是谁删除了它。我怀疑实现此目的的唯一方法是检查正在比较的两个修订版之间的每个提交(并以某种方式将单独差异中的所有更改映射到总差异中的行)...
是否存在可以执行此类操作的工具?
在基本的普通 SVN 设置中,没有命令可以合并特定修订版上的blame 和 diff 的输出。如果您指定了您使用的特定 SVN 客户端,我可能能够找到执行此操作的插件,但您没有指定,所以我无法搜索。
唯一的选择是使用脚本或小程序来匹配两个输出。如果你能得到 diff 和blame 的行号,这应该不会那么难。尽管这不是您所希望的答案,但它确实是一个答案,而且这个问题自 2009 年以来一直悬而未决。
| 归档时间: |
|
| 查看次数: |
2063 次 |
| 最近记录: |