aboutsummaryrefslogtreecommitdiffhomepage
path: root/gbp/git/__init__.py
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2011-11-21 22:42:31 +0100
committerGuido Günther <agx@sigxcpu.org>2011-11-21 23:19:26 +0100
commit984a539183af87f6aed6786e0cacdcd5adc56676 (patch)
tree8f90c67338b421389c191f12654c71494d08b747 /gbp/git/__init__.py
parenteabca1fcdc7cd932049608cbab634dd0ed63542e (diff)
GitRepository: add signature option to format_patch
Diffstat (limited to 'gbp/git/__init__.py')
-rw-r--r--gbp/git/__init__.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/gbp/git/__init__.py b/gbp/git/__init__.py
index b1e419c3..a3cbe215 100644
--- a/gbp/git/__init__.py
+++ b/gbp/git/__init__.py
@@ -29,6 +29,8 @@ from gbp.git.modifier import GitModifier
from gbp.git.commit import GitCommit
from gbp.git.errors import GitError
from gbp.git.fastimport import FastImport
+from gbp.git.args import GitArgs
+
class GitRepositoryError(GitError):
"""Exception thrown by L{GitRepository}"""
@@ -992,12 +994,16 @@ class GitRepository(object):
#{ Patches
- def format_patches(self, start, end, output_dir):
+ def format_patches(self, start, end, output_dir, signature=True):
"""
Output the commits between start and end as patches in output_dir
"""
- options = [ '-N', '-k', '-o', output_dir, '%s...%s' % (start, end) ]
- output, ret = self.__git_getoutput('format-patch', options)
+ options = GitArgs('-N', '-k',
+ '-o', output_dir)
+ options.add_cond(not signature, '--no-signature')
+ options.add('%s...%s' % (start, end))
+
+ output, ret = self.__git_getoutput('format-patch', options.args)
return [ line.strip() for line in output ]
def apply_patch(self, patch, index=True, context=None, strip=None):