From 89e3bc51b5d645f6814a152d853994467eafea81 Mon Sep 17 00:00:00 2001 From: Yann Dirson Date: Mon, 14 Aug 2006 18:55:42 +0200 Subject: [PATCH] Add a --parent flag to "stgit pick". 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 --- stgit/commands/pick.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/stgit/commands/pick.py b/stgit/commands/pick.py index 1aa83d0..f8f3577 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', metavar = 'COMMITID', + 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 = git_id(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, -- 2.11.0