git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/2] Add a --parent flag to "stgit pick".

From
Yann Dirson <ydirson@altern.org>
Date
Aug 14, 2006, 16:55 UTC
Message-ID
<20060814165542.20350.34612.stgit@gandelf.nowhere.earth>
In-Reply-To
<20060814165307.20350.63286.stgit@gandelf.nowhere.earth>

This is useful to pick changes from a non-stgit branch, that were recorded as a merge commit, while giving control on the parent to use as "bottom" for the patch (for some reason stgit selects the first parent by default).

Incidentally, it can be used to pick changes between arbitrary trees in the revision graph. Since that can be useful as well, I did not implement the is_parent check I originally meant to add.

Signed-off-by: Yann Dirson <ydirson@altern.org>
---
 stgit/commands/pick.py |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/stgit/commands/pick.py b/stgit/commands/pick.py
index 1aa83d0..2916b6e 100644
--- a/stgit/commands/pick.py
+++ b/stgit/commands/pick.py
@@ -37,6 +37,8 @@ options = [make_option('-n', '--name',
            make_option('-r', '--reverse',
                        help = 'reverse the commit object before importing',
                        action = 'store_true'),
+           make_option('-p', '--parent',
+                       help = 'use COMMITID as parent'),
            make_option('--fold',
                        help = 'fold the commit object into the current patch',
                        action = 'store_true'),
@@ -73,12 +75,17 @@ def func(parser, options, args):
             if not patch:
                 raise CmdException, 'Unknown patch name'
 
+    if options.parent:
+        parent = options.parent
+    else:
+        parent = commit.get_parent()
+
     if not options.reverse:
-        bottom = commit.get_parent()
+        bottom = parent
         top = commit_id
     else:
         bottom = commit_id
-        top = commit.get_parent()
+        top = parent
 
     if options.fold:
         print 'Folding commit %s...' % commit_id,
Previous: Yann DirsonNext: Yann Dirson
Message 2 of 6 in “Series short description”
  1. 0/2 Series short descriptionYann Dirson, Aug 14, 2006
  2. 1/2 Add a --parent flag to "stgit pick".Yann Dirson, Aug 14, 2006
  3. 2/2 Look for a commit's parents in the standard way.Yann Dirson, Aug 14, 2006
  4. Catalin MarinasAug 20, 2006
  5. Junio C HamanoAug 22, 2006
  6. Yann DirsonSep 3, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.