projects
/
git.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Documentation/git-format-patch.txt: Add --signoff, --check, and long option-names.
[git.git]
/
git-merge-recursive.py
diff --git
a/git-merge-recursive.py
b/git-merge-recursive.py
index
d7d36aa
..
b7fb096
100755
(executable)
--- a/
git-merge-recursive.py
+++ b/
git-merge-recursive.py
@@
-98,7
+98,7
@@
getFilesRE = re.compile(r'^([0-7]+) (\S+) ([0-9a-f]{40})\t(.*)$', re.S)
def getFilesAndDirs(tree):
files = Set()
dirs = Set()
def getFilesAndDirs(tree):
files = Set()
dirs = Set()
- out = runProgram(['git-ls-tree', '-r', '-z', tree])
+ out = runProgram(['git-ls-tree', '-r', '-z',
'-t',
tree])
for l in out.split('\0'):
m = getFilesRE.match(l)
if m:
for l in out.split('\0'):
m = getFilesRE.match(l)
if m:
@@
-245,7
+245,7
@@
def updateFileExt(sha, mode, path, updateCache, updateWd):
try:
createDir = not stat.S_ISDIR(os.lstat(p).st_mode)
try:
createDir = not stat.S_ISDIR(os.lstat(p).st_mode)
- except
:
+ except
OSError:
createDir = True
if createDir:
createDir = True
if createDir:
@@
-293,6
+293,10
@@
def removeFile(clean, path):
except OSError, e:
if e.errno != errno.ENOENT and e.errno != errno.EISDIR:
raise
except OSError, e:
if e.errno != errno.ENOENT and e.errno != errno.EISDIR:
raise
+ try:
+ os.removedirs(os.path.dirname(path))
+ except OSError:
+ pass
def uniquePath(path, branch):
def fileExists(path):
def uniquePath(path, branch):
def fileExists(path):
@@
-824,8
+828,6
@@
def processEntry(entry, branch1Name, branch2Name):
if cacheOnly:
updateFile(False, sha, mode, path)
else:
if cacheOnly:
updateFile(False, sha, mode, path)
else:
- updateFileExt(aSha, aMode, path,
- updateCache=True, updateWd=False)
updateFileExt(sha, mode, path, updateCache=False, updateWd=True)
else:
die("ERROR: Fatal merge failure, shouldn't happen.")
updateFileExt(sha, mode, path, updateCache=False, updateWd=True)
else:
die("ERROR: Fatal merge failure, shouldn't happen.")