提交 6511cce2 编写于 作者: F Fredrik Kuivinen 提交者: Junio C Hamano

[PATCH] Use a temporary index file when we merge the common ancestors.

With this change we can get rid of a call to 'git-update-index
--refresh'.
Signed-off-by: NFredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: NJunio C Hamano <junkio@cox.net>
上级 87a71b65
......@@ -10,6 +10,22 @@
# The actual merge code
# ---------------------
originalIndexFile = os.environ.get('GIT_INDEX_FILE',
os.environ.get('GIT_DIR', '.git') + '/index')
temporaryIndexFile = os.environ.get('GIT_DIR', '.git') + \
'/merge-recursive-tmp-index'
def setupIndex(temporary):
try:
os.unlink(temporaryIndexFile)
except OSError:
pass
if temporary:
newIndex = temporaryIndexFile
os.environ
else:
newIndex = originalIndexFile
os.environ['GIT_INDEX_FILE'] = newIndex
def merge(h1, h2, branch1Name, branch2Name, graph, callDepth=0):
'''Merge the commits h1 and h2, return the resulting virtual
commit object and a flag indicating the cleaness of the merge.'''
......@@ -39,13 +55,10 @@ def infoMsg(*args):
assert(isinstance(Ms, Commit))
if callDepth == 0:
if len(ca) > 1:
runProgram(['git-read-tree', h1.tree()])
runProgram(['git-update-index', '-q', '--refresh'])
# Use the original index if we only have one common ancestor
setupIndex(False)
cleanCache = False
else:
setupIndex(True)
runProgram(['git-read-tree', h1.tree()])
cleanCache = True
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册