Here is a small series to implement:
git replace [-f] --graft [...]
This patch series goes on top of the patch series that
implements --edit.
The changes since v6, thanks to Junio, are:
- the patch that adds for_each_mergetag() is not part of the
series any more; it is managed by Junio in another dedicated
series
- replace_parents() iterates over all the argv it is passed,
not just from argv[1] to argv[argc - 1], in patch 2/9
- in t6050-replace.sh, commit_buffer_contains_parents() has
been simplified, in patch 3/9
- in t6050-replace.sh, there is now a space between function
names and (), in patch 3/9
- in t6050-replace.sh, there has been a refactoring regarding
how commit parenthood is tested, in patchs 3/9 and 7/9; we
only use commit_has_parents() that now tests everything
- in t6050-replace.sh, commit_buffer_contains_parents()
compares the 'expected' and 'actual' files in the right
order, in patch 3/9
We still error if the replacement commit that would be created
would be the same as the existing one, as we already do when
using --edit. If people care, I suggest they send a patch to
change both --graft and --edit at the same time.
Christian Couder (9):
replace: cleanup redirection style in tests
replace: add --graft option
replace: add test for --graft
Documentation: replace: add --graft option
contrib: add convert-grafts-to-replace-refs.sh
replace: remove signature when using --graft
replace: add test for --graft with signed commit
replace: check mergetags when using --graft
replace: add test for --graft with a mergetag
Documentation/git-replace.txt | 10 +++
builtin/replace.c | 126 ++-
commit.c | 34
commit.h | 2 +
contrib/convert-grafts-to-replace-refs.sh | 28 ++
t/t6050-replace.sh| 139 --
6 files changed, 313 insertions(+), 26 deletions(-)
create mode 100755 contrib/convert-grafts-to-replace-refs.sh
--
2.0.0.421.g786a89d.dirty
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html