diff options
author | Fredrik Kuivinen <freku045@student.liu.se> | 2005-09-25 16:48:24 +0200 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2005-09-25 16:08:53 -0700 |
commit | 0bed18998ae6c0cec1485e6295be16a4fcebc7a7 (patch) | |
tree | 976e661a6944005201b73ec14424a69fbeaff3d2 | |
parent | Diff: --name-status output format. (diff) | |
download | tgif-0bed18998ae6c0cec1485e6295be16a4fcebc7a7.tar.xz |
[PATCH] recursive-merge: Don't print a stack trace when read-tree fails.
If the working tree is dirty read-tree will fail, and we don't want an
ugly stack trace in that case. Also make sure we don't print stack
traces when we use 'die'.
Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
-rwxr-xr-x | git-merge-recursive.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/git-merge-recursive.py b/git-merge-recursive.py index 60e8b21b3b..689f91430b 100755 --- a/git-merge-recursive.py +++ b/git-merge-recursive.py @@ -149,7 +149,10 @@ def mergeTrees(head, merge, common, branch1Name, branch2Name, else: updateArg = '-u' - runProgram(['git-read-tree', updateArg, '-m', common, head, merge]) + [out, code] = runProgram(['git-read-tree', updateArg, '-m', common, head, merge], returnCode = True) + if code != 0: + die('git-read-tree:', out) + cleanMerge = True [tree, code] = runProgram('git-write-tree', returnCode=True) @@ -430,8 +433,11 @@ try: print '' except: - traceback.print_exc(None, sys.stderr) - sys.exit(2) + if isinstance(sys.exc_info()[1], SystemExit): + raise + else: + traceback.print_exc(None, sys.stderr) + sys.exit(2) if clean: sys.exit(0) |