Svn 是否可以在Subversion中查看与给定发行号相关的特定文件的所有文件更改?

Svn 是否可以在Subversion中查看与给定发行号相关的特定文件的所有文件更改?,svn,version-control,tortoisesvn,Svn,Version Control,Tortoisesvn,例如,我有一个文件'example.cs',我希望看到在修订版800和1200之间对此文件所做的所有更改。然而,比较这两个版本也会显示我不感兴趣的更改,因为我只想看到与提交该文件时输入的特定问题编号相关的代码更改 有没有办法使用Subversion/TortoiseSVN查看这些内容?选择责备时,输入要比较的修订号,但在我的TortioseSVN版本的底部有一个勾选框,名为“使用文本查看器查看责备”。这将在本地文本查看器中打开文件 列之间用空格分隔,因此您可以在MS Excel中轻松地打开它并将

例如,我有一个文件'example.cs',我希望看到在修订版800和1200之间对此文件所做的所有更改。然而,比较这两个版本也会显示我不感兴趣的更改,因为我只想看到与提交该文件时输入的特定问题编号相关的代码更改


有没有办法使用Subversion/TortoiseSVN查看这些内容?

选择责备时,输入要比较的修订号,但在我的TortioseSVN版本的底部有一个勾选框,名为“使用文本查看器查看责备”。这将在本地文本查看器中打开文件

列之间用空格分隔,因此您可以在MS Excel中轻松地打开它并将数据排序为列


最后,在每个列中添加一个过滤器,在修订列上,您只需勾选所有您想要查看更改的修订即可。选择“责备”时,输入您想要比较的修订号,但在我的TortiosVn版本中,底部有一个勾选框,名为“使用文本查看器查看责备”。这将在本地文本查看器中打开文件

列之间用空格分隔,因此您可以在MS Excel中轻松地打开它并将数据排序为列


最后,在每个列中添加一个过滤器,在“修订”列中,您只需勾选所有您想要查看的修订,即可将Bash脚本的更改添加到rescue:

#!/bin/bash

FILE=file
ISSUE="#12"


for rev in $(svn log ${FILE} | grep ^r[0-9] | sed 's/r\([0-9]*\)\ .*/\1/g')
do
  svn log -r${rev} | tail -n +3 | head -n -1 | grep "${ISSUE}" > /dev/null
  if [ $? -eq 0 ]; then
    svn diff ${FILE} -c${rev}
  fi
done

上面的脚本搜索工作副本中的文件日志,查找提交消息中的字符串问题,并将该修订的差异打印到命令行。

Bash脚本:

#!/bin/bash

FILE=file
ISSUE="#12"


for rev in $(svn log ${FILE} | grep ^r[0-9] | sed 's/r\([0-9]*\)\ .*/\1/g')
do
  svn log -r${rev} | tail -n +3 | head -n -1 | grep "${ISSUE}" > /dev/null
  if [ $? -eq 0 ]; then
    svn diff ${FILE} -c${rev}
  fi
done

上面的脚本搜索工作副本中的文件日志,查找提交消息中的字符串问题,并将该修订的差异打印到命令行。

当您在Turtoise SVN上显示日志时,您可以输入问题编号(我希望您已在评论部分输入)。另一种方法-右键单击-扭曲SVN-责备。否则,请详细说明问题“具体发行号”是多少?你怎么进去的?作为评论?作为自定义svn属性?好的,一种更好的措辞方式是,我想比较文件的两个修订版(比如1200到800),但我只想看到在特定签入时所做的更改(而不是与我想看到的内容无关的所有其他文件更改)。有什么方法可以做到这一点吗?当你在Tortoise SVN上显示日志时,你可以输入发行号(我希望你已经在评论部分输入了)。另一种方法-右键单击-扭曲SVN-责备。否则,请详细说明问题“具体发行号”是多少?你怎么进去的?作为评论?作为自定义svn属性?好的,一种更好的措辞方式是,我想比较文件的两个修订版(比如1200到800),但我只想看到在特定签入时所做的更改(而不是与我想看到的内容无关的所有其他文件更改)。我有办法做到这一点吗?