So that all the tests pass.
Signed-off-by: Felipe Contreras <redacted>
---
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 d8d32fe..e9ecccc 100644
--- a/git-rebase--cherrypick.sh
+++ b/git-rebase--cherrypick.sh
@@ -21,7 +21,22 @@ test -n "$rebase_root" && root_flag=--root
mkdir -p "$state_dir" || die "Could not create temporary $state_dir"
: > "$state_dir"/cherrypick || die "Could not mark as cherrypick"
-git cherry-pick --allow-empty "$revisions"
+if test -n "$rebase_root"
+then
+ revisions="$onto...$orig_head"
+else
+ revisions="$upstream...$orig_head"
+fi
+
+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 $extra "$revisions"
ret=$?
if test 0 != $ret
--
1.8.4-fc