GitRepository: add signature option to format_patch
authorGuido Günther <agx@sigxcpu.org>
Mon, 21 Nov 2011 21:42:31 +0000 (22:42 +0100)
committerGuido Günther <agx@sigxcpu.org>
Mon, 21 Nov 2011 22:19:26 +0000 (23:19 +0100)
gbp/git/__init__.py

index b1e419c..a3cbe21 100644 (file)
@@ -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):