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

[RFC/PATCH v2 5/8] rebase: cherry-pick: fix command invocations

From
Felipe Contreras <felipe.contreras@gmail.com>
Date
May 29, 2013, 04:16 UTC
Message-ID
<1369801000-3705-6-git-send-email-felipe.contreras@gmail.com>
In-Reply-To
<1369801000-3705-1-git-send-email-felipe.contreras@gmail.com>
So that all the tests pass.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
 git-rebase--cherrypick.sh | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/git-rebase--cherrypick.sh b/git-rebase--cherrypick.sh
index 2fa4993..ab892e6 100644
--- a/git-rebase--cherrypick.sh
+++ b/git-rebase--cherrypick.sh
@@ -23,11 +23,26 @@ test -n "$rebase_root" && root_flag=--root
 mkdir "$state_dir" || die "Could not create temporary $state_dir"
 : > "$state_dir"/cherrypick || die "Could not mark as cherrypick"
 
+if test -n "$rebase_root"
+then
+	revisions="$onto...$orig_head"
+else
+	revisions="$upstream...$orig_head"
+fi
+
 # we have to do this the hard way.  git format-patch completely squashes
 # empty commits and even if it didn't the format doesn't really lend
 # itself well to recording empty patches.  fortunately, cherry-pick
 # makes this easy
-git cherry-pick --allow-empty "$revisions"
+if test -n "$keep_empty"
+then
+	extra="--allow-empty"
+else
+	extra="--skip-empty --cherry-pick"
+fi
+test -n "$GIT_QUIET" && extra="$extra -q"
+test -z "$force_rebase" && extra="$extra --ff"
+git cherry-pick --no-merges --right-only --topo-order --do-walk --copy-notes $extra "$revisions"
 ret=$?
 
 if test 0 != $ret
-- 
1.8.3.rc3.312.g47657de
Previous: Stefano LattariniNext: Felipe Contreras
Message 16 of 21 in “rebase: new cherry-pick mode”
  1. 0/8 rebase: new cherry-pick modeFelipe Contreras, May 29, 2013
  2. 1/8 rebase: split the cherry-pick stuffFelipe Contreras, May 29, 2013
  3. 2/8 rebase: cherry-pick: fix mode storageFelipe Contreras, May 29, 2013
  4. Martin von ZweigbergkMay 29, 2013
  5. Felipe ContrerasMay 29, 2013
  6. 3/8 rebase: cherry-pick: fix sequence continuationFelipe Contreras, May 29, 2013
  7. Martin von ZweigbergkMay 29, 2013
  8. Felipe ContrerasMay 29, 2013
  9. Martin von ZweigbergkMay 29, 2013
  10. Felipe ContrerasMay 29, 2013
  11. Martin von ZweigbergkMay 29, 2013
  12. 4/8 rebase: cherry-pick: fix abort of cherry modeFelipe Contreras, May 29, 2013
  13. Martin von ZweigbergkMay 29, 2013
  14. Felipe ContrerasMay 29, 2013
  15. Stefano LattariniMay 29, 2013
  16. 5/8 rebase: cherry-pick: fix command invocationsFelipe Contreras, May 29, 2013
  17. 6/8 rebase: cherry-pick: fix status messagesFelipe Contreras, May 29, 2013
  18. 7/8 rebase: cherry-pick: automatically commit stageFelipe Contreras, May 29, 2013
  19. 8/8 rebase: use 'cherrypick' mode instead of 'am'Felipe Contreras, May 29, 2013
  20. Junio C HamanoMay 29, 2013
  21. Felipe ContrerasMay 30, 2013

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.