如何使用svn导出或区分由特定用户提交的文件?
我需要检查我以前提交的文件的差异。如何使用svn导出或区分由特定用户提交的文件?,svn,version-control,tortoisesvn,diff,Svn,Version Control,Tortoisesvn,Diff,我需要检查我以前提交的文件的差异。 但如果我尝试使用“修订范围”选项来区分或导出文件, 其他人提交的文件也显示在结果中。 我只需要我提交的文件。 如何使用svn导出或区分由特定用户提交的文件? 将下面的python文件另存为当前目录中的userchanges.py,并使其可执行: #!/usr/bin/env python import sys from subprocess import call data = sys.stdin.readlines() data = data[1:] h
但如果我尝试使用“修订范围”选项来区分或导出文件, 其他人提交的文件也显示在结果中。
我只需要我提交的文件。
如何使用svn导出或区分由特定用户提交的文件?
将下面的python文件另存为当前目录中的
userchanges.py
,并使其可执行:
#!/usr/bin/env python
import sys
from subprocess import call
data = sys.stdin.readlines()
data = data[1:]
horiz_line = '-' * 72
data_len = len(data)
i = 0
while i < data_len:
while data[i].strip() != horiz_line:
i += 1
i += 1
if i >= data_len:
break
rev, name, rest = data[i].split(' | ', 2)
if name == sys.argv[1]:
i += 2
while data[i].strip() != '':
line = data[i].strip().split(' ')
print("svn diff -r %s %s" % (rev, line[1][1:]))
call("svn diff -r %s %s" % (rev, line[1][1:]), shell=True)
i += 1
i += 1
其中,youruser
是要检查的用户的svn用户名
它将为所选用户的每个文件和版本运行
svn diff
。谢谢您的回答。我一点也不懂phython,但也许我可以把代码翻译成我知道的其他语言。我希望有一个简单的命令可以在svn上自己或乌龟上执行。
svn checkout path/to/your/trunk
svn log -v trunk | ./userchanges.py youruser