[StGIT PATCH 4/6] Simplify merge_recursive
From: Karl Hasselström <hidden>
Date: 2016-06-15 22:43:31
Subsystem:
the rest · Maintainer:
Linus Torvalds
From: David Kågedal <redacted> Listing the unmerged files is unnecessary, since the information isn't really used anyway. Just note if the merge failed or succeeded. Signed-off-by: David Kågedal <redacted> Signed-off-by: Karl Hasselström <redacted> --- stgit/git.py | 32 +------------------------------- 1 files changed, 1 insertions(+), 31 deletions(-)
diff --git a/stgit/git.py b/stgit/git.py
index 82cb211..173cc4b 100644
--- a/stgit/git.py
+++ b/stgit/git.py@@ -642,40 +642,10 @@ def merge_recursive(base, head1, head2): """ refresh_index() - err_output = None - # this operation tracks renames but it is slower (used in - # general when pushing or picking patches) try: # discard output to mask the verbose prints of the tool GRun('git-merge-recursive', base, '--', head1, head2).discard_output() - except GitRunException, ex: - err_output = str(ex) - pass - - # check the index for unmerged entries - files = {} - - for line in GRun('git-ls-files', '--unmerged', '--stage', '-z' - ).raw_output().split('\0'): - if not line: - continue - - mode, hash, stage, path = stages_re.findall(line)[0] - - if not path in files: - files[path] = {} - files[path]['1'] = ('', '') - files[path]['2'] = ('', '') - files[path]['3'] = ('', '') - - files[path][stage] = (mode, hash) - - if err_output and not files: - # if no unmerged files, there was probably a different type of - # error and we have to abort the merge - raise GitException, err_output - - if files: + except GitRunException: raise GitException, 'GIT index merging failed (possible conflicts)' def merge(base, head1, head2):