#! /usr/bin/env python """ Check in temporary files. Usage: merge3ci.py --pretend working-wc-path merge3ci.py working-wc-path For every file 'xx.merge.tmp.svncommit' found in the working copy, this script runs the command svn cp xx url-of-xx.merge.tmp -F xx.merge.tmp.svncommit svn revert xx """ import py import os, sys def main(root, pretend): suffix = ".merge.tmp.svncommit" for p in py.path.local(root).visit("*" + suffix): logname = str(p) assert logname.endswith(suffix) basename = logname[:-len(suffix)] baseurl = py.path.svnwc(basename).info().url targeturl = baseurl + '.merge.tmp' cmd = 'svn cp -F %r %r %s && rm %r && svn revert %r' % (logname, basename, targeturl, logname, basename) print cmd if not pretend: if os.system(cmd) != 0: print >> sys.stderr, '(failed!)' sys.exit(1) if __name__ == '__main__': import sys pretend = '--pretend' in sys.argv if pretend: sys.argv.remove('--pretend') if len(sys.argv) != 2: print >> sys.stderr, __doc__ sys.exit(2) main(sys.argv[1], pretend)