diff --git a/jsvn b/jsvn index b22b67c..df4477a 100755 --- a/jsvn +++ b/jsvn @@ -137,7 +137,8 @@ def merge(argv, svn): branches = getSVNBranchList(svn) if not argv[1] in branches: return -3 - lines = Popen([svn, 'log', '--stop-on-copy', root + '/branches/' + argv[1]]) + lines = Popen([svn, 'log', '--stop-on-copy', root + '/branches/' + argv[1]], + stdout=PIPE).communicate()[0].split('\n') rev = 0 for line in lines: m = re.match(r'^r(\d+)\s', line) @@ -149,7 +150,7 @@ def merge(argv, svn): path = getSVNRelPath(svn) Popen([svn, 'merge', '-r%s:HEAD' % rev, root + '/branches/' + argv[1] + path, '.']).wait() - return -2 + return 0 def main(argv): realsvn = findInPath('svn') @@ -184,6 +185,10 @@ def main(argv): Popen([colordiff], stdin=diff_out).wait() return 0 + if argv[0] == "root": + sys.stdout.write(getSVNRoot(realsvn) + '\n') + return 0 + if colorsvn != '': realsvn = colorsvn