[PATCH 1/2] Simple rename of top-most patch

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Allow renaming of the top-most patch just by calling stg rename <new-patch-name>,
instead of stg rename <old> <new>. This is for example helpful for those people who
always have a typo or two in their patch names.

Signed-off-by: Onno Kortmann <onno@xxxxxxx>
---

 stgit/commands/rename.py |   23 ++++++++++++++++-------
 1 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/stgit/commands/rename.py b/stgit/commands/rename.py
index e2b0fa4..c687455 100644
--- a/stgit/commands/rename.py
+++ b/stgit/commands/rename.py
@@ -25,9 +25,10 @@ from stgit import stack, git
 
 
 help = 'rename a patch in the series'
-usage = """%prog [options] <oldpatch> <newpatch>
+usage = """%prog [options] [oldpatch] <newpatch>
 
-Rename <oldpatch> into <newpatch> in a series."""
+Rename <oldpatch> into <newpatch> in a series. If <oldpatch> is not given, the
+top-most patch will be renamed. """
 
 directory = DirectoryHasRepository()
 options = [make_option('-b', '--branch',
@@ -37,9 +38,17 @@ options = [make_option('-b', '--branch',
 def func(parser, options, args):
     """Rename a patch in the series
     """
-    if len(args) != 2:
-        parser.error('incorrect number of arguments')
-
-    out.start('Renaming patch "%s" to "%s"' % (args[0], args[1]))
-    crt_series.rename_patch(args[0], args[1])
+    crt=crt_series.get_current()
+
+    if len(args) == 2:
+        old, new=args
+    elif len(args) == 1:
+        if not crt:
+            raise CmdException, "No applied top patch to rename exists."
+        old, [new]=crt, args
+    else: parser.error('incorrect number of arguments')
+
+    out.start('Renaming patch "%s" to "%s"' % (old, new))
+    crt_series.rename_patch(old, new)
+    
     out.done()


-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux