2011-07-25 57 views
0

我需要檢查我之前承諾的文件的差異。
但是,如果我嘗試使用版本範圍選項 來區分或導出文件,其他人提交的文件也顯示在結果中。

我需要我承諾的唯一文件。
如何使用svn導出或區分特定用戶提交的文件?

如何使用svn導出或區分特定用戶提交的文件?

回答

0

保存以下爲userchanges.py在當前目錄下,並使其可執行Python文件:

#!/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 

然後運行:

svn checkout path/to/your/trunk 
svn log -v trunk | ./userchanges.py youruser 

其中youruser是svn的用戶的用戶名要檢查。

它將針對每個文件和選定用戶的修訂版運行svn diff

+0

感謝您的回答。 我不知道phython,但也許我可以將代碼翻譯成我知道的其他語言。 我希望有一個簡單的命令可以在svn自己或tortoisesvn上做到這一點。 –

相關問題