The return of -Xours, -Xtheirs, -Xsubtree=dir
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest8 patches 17 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/8 | git-merge-file --ours, --theirsDocumentation/ builtin-merge-file.c xdiff/ +1 more | +29 | 5 replies | |
| 2/8 | builtin-merge.c: call exclude_cmds() correctly.builtin-merge.c | +1 | 2 replies | |
| 3/8 | git-merge-recursive-{ours,theirs}.gitignore Makefile builtin-checkout.c +11 more | +120 | 7 replies | |
| 4/8 | Teach git-merge to pass -X<option> to the backend strategy moduleMakefile builtin-merge-recursive.c builtin-merge.c +1 more | +53 | 1 reply | |
| 5/8 | Teach git-pull to pass -X<option> to git-mergegit-pull.sh t/ | +23 | 1 reply | |
| 6/8 | Make "subtree" part more orthogonal to the rest of merge-recursive.builtin-merge-recursive.c builtin-merge.c cache.h +3 more | +90 | 1 reply | |
| 7/8 | Extend merge-subtree tests to test -Xsubtree=dir.t/ | +46 | 0 replies | |
| 8/8 | Document that merge strategies can now take their own optionsDocumentation/ Documentation/ | +32 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 0/8] The return of -Xours, -Xtheirs, -Xsubtree=dir
As discussed earlier today, this brings back Junio's earlier patch series that introduced (and then used) a -X option for configuring merge strategies. My favourite use of this is -Xsubtree=<dir>, which lets you provide the actual subdir prefix when using the subtree merge strategy.
Avery Pennarun (8):
git-merge-file --ours, --theirs
builtin-merge.c: call exclude_cmds() correctly. git-merge-recursive-{ours,theirs}
Teach git-merge to pass -X<option> to the backend strategy module Teach git-pull to pass -X<option> to git-merge
Make "subtree" part more orthogonal to the rest of merge-recursive. Extend merge-subtree tests to test -Xsubtree=dir. Document that merge strategies can now take their own options
.gitignore | 2 + Documentation/git-merge-file.txt | 12 +++++- Documentation/merge-options.txt | 4 ++ Documentation/merge-strategies.txt | 29 ++++++++++++++- builtin-checkout.c | 2 +- builtin-merge-file.c | 5 ++- builtin-merge-recursive.c | 24 ++++++++++--- builtin-merge.c | 44 +++++++++++++++++++++-- cache.h | 1 + contrib/examples/git-merge.sh | 3 +- git-compat-util.h | 1 + git-pull.sh | 17 ++++++++- git.c | 2 + ll-merge.c | 20 +++++----- ll-merge.h | 2 +- match-trees.c | 69 +++++++++++++++++++++++++++++++++++- merge-recursive.c | 35 +++++++++++++++--- merge-recursive.h | 7 +++- strbuf.c | 9 +++++ t/t6029-merge-subtree.sh | 47 ++++++++++++++++++++++++- t/t6034-merge-ours-theirs.sh | 64 +++++++++++++++++++++++++++++++++ xdiff/xdiff.h | 7 +++- xdiff/xmerge.c | 11 +++++- 23 files changed, 377 insertions(+), 40 deletions(-) create mode 100755 t/t6034-merge-ours-theirs.sh