The goal of this patch series is to make it possible for "git cherry-pick"
to fast forward instead of creating a new commit if the cherry picked commit
has the same parent as the one we are cherry-picking on.
Changes since the previous series are the following:
- now --ff should work with merge commits and "-m <parent-num>" option
- added a no-op --no-ff option as request by Paolo
- removed for now the patch that used the new reset() function in
"builtin-merge.c"
Christian Couder (11):
pick: refactor checking parent in a check_parent function
pick: make check_parent function extern
pick: move calling check_parent() ouside pick_commit()
reset: refactor updating heads into a static function
reset: refactor reseting in its own function
reset: make reset function non static and declare it in "reset.h"
revert: add --ff option to allow fast forward when cherry-picking
cherry-pick: add tests for new --ff option
Documentation: describe new cherry-pick --ff option
cherry-pick: add a no-op --no-ff option to future proof scripts
rebase -i: use new --ff cherry-pick option
Stephan Beyer (1):
revert: libify cherry-pick and revert functionnality
Documentation/git-cherry-pick.txt | 10 +-
Makefile | 2 +
builtin/reset.c | 178 ++++++++++++----------
builtin/revert.c | 308 ++++++++++---------------------------
git-rebase--interactive.sh | 15 +--
pick.c | 223 +++++++++++++++++++++++++++
pick.h | 14 ++
reset.h | 10 ++
t/t3506-cherry-pick-ff.sh | 106 +++++++++++++
9 files changed, 545 insertions(+), 321 deletions(-)
create mode 100644 pick.c
create mode 100644 pick.h
create mode 100644 reset.h
create mode 100755 t/t3506-cherry-pick-ff.sh