[Python-checkins] r88807 - tracker/instances/python-dev/scripts/addpatchsets

martin.v.loewis python-checkins at python.org
Sat Mar 26 19:26:42 CET 2011


Author: martin.v.loewis
Date: Sat Mar 26 19:26:41 2011
New Revision: 88807
Log:
Support --git-style diffs.
Modified:
 tracker/instances/python-dev/scripts/addpatchsets
Modified: tracker/instances/python-dev/scripts/addpatchsets
==============================================================================
--- tracker/instances/python-dev/scripts/addpatchsets	(original)
+++ tracker/instances/python-dev/scripts/addpatchsets	Sat Mar 26 19:26:41 2011
@@ -57,7 +57,7 @@
 patches = []
 filename = None
 for line in data.splitlines(True):
- if line.startswith('diff -r'):
+ if line.startswith('diff '):
 if filename:
 chunks = patching.ParsePatchToChunks(diff)
 if not chunks:
@@ -66,6 +66,9 @@
 patches.append((filename, ''.join(diff), chunks))
 diff = []
 filename = line.split()[-1]
+ if filename.startswith("b/"):
+ # git style
+ filename = filename[2:]
 continue
 if filename:
 diff.append(line)
@@ -78,13 +81,14 @@
 return patches
 
 def find_bases(data):
- if not data.startswith("diff -r "):
+ if not data.startswith("diff "):
 # this should only be called if there is actually is a diff in the file
- head, tail = data.split("\ndiff -r ", 1)
- data = "diff -r "+tail
- first, second, rev = data.split()[:3]
- if first != 'diff' or second != '-r' or len(rev) != 12:
- return None, None
+ head, tail = data.split("\ndiff ", 1)
+ data = "diff "+tail
+ # default to default branch if no revision is found
+ rev = 'default'
+ if data.startswith("diff -r "):
+ first, second, rev = data.split()[:3]
 c = connection.cursor()
 pieces = hg_splitpatch(data)
 if not pieces:
@@ -128,7 +132,7 @@
 print filename,"not found"
 continue
 data = open(filename).read()
- if not data.startswith('diff -r ') and data.find('\ndiff -r ')==-1:
+ if not data.startswith('diff ') and data.find('\ndiff ')==-1:
 if verbose:
 print filename, "is not a patch"
 continue


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /