From: Aaron Bentley Date: Fri, 3 Feb 2006 20:44:25 +0000 (-0500) Subject: Did post-commit merging X-Git-Tag: 1.0.0~223 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=66abb87cf229971b3dcc0781d83bbddeb8c0604f;p=be.git Did post-commit merging --- diff --git a/libbe/bzr.py b/libbe/bzr.py index b8d1c8c..c6fc622 100644 --- a/libbe/bzr.py +++ b/libbe/bzr.py @@ -21,7 +21,7 @@ import config from rcs import invoke, CommandError def invoke_client(*args, **kwargs): - directory = kwargs.get('directory') + directory = kwargs['directory'] expect = kwargs.get('expect', (0, 1)) cl_args = ["bzr"] cl_args.extend(args) @@ -111,12 +111,19 @@ def commit(directory, summary, body=None): temp_file = os.fdopen(descriptor, 'wb') temp_file.write(summary) temp_file.close() - try: - invoke_client('commit', '--unchanged', '--file', filename, - directory=directory) + invoke_client('commit', '--unchanged', '--file', filename, + directory=directory) finally: os.unlink(filename) def postcommit(directory): - pass + try: + status = invoke_client('merge', directory=directory) + except CommandError: + status = invoke_client('revert --no-backup', directory=directory) + status = invoke_client('resolve --all', directory=directory) + raise + if status == 1: + commit(directory, 'Merge from upstream') + name = "bzr"