From: Phillip Wood Date: Thu, 21 May 2020 10:14:50 GMT Subject: [PATCH v3 0/5] cleanup ra/rebase-i-more-options Message-ID: <20200521101455.63484-1-phillip.wood123@gmail.com> In-Reply-To: <20200407141125.30872-1-phillip.wood123@gmail.com> From: Phillip Wood Thanks for the feedback on v2, I've updated the documentation as suggested by Elijah and made the style fixes suggested by Alban but I've not changed read_author_script() for the reasons explained in https://lore.kernel.org/git/c6a2711a-96c1-d7ac-9678-20c581408ef5@gmail.com These patches are based on 9fadedd637 ("Merge branch 'ds/default-pack-use-sparse-to-true'", 2020-03-29) Phillip Wood (2): rebase -i: support --committer-date-is-author-date rebase -i: support --ignore-date Rohit Ashiwal (3): rebase -i: add --ignore-whitespace flag sequencer: rename amend_author to author_to_free rebase: add --reset-author-date Documentation/git-rebase.txt | 33 +++- builtin/rebase.c | 46 ++++-- sequencer.c | 111 ++++++++++++- sequencer.h | 2 + t/t3422-rebase-incompatible-options.sh | 2 - t/t3436-rebase-more-options.sh | 209 +++++++++++++++++++++++++ 6 files changed, 379 insertions(+), 24 deletions(-) create mode 100755 t/t3436-rebase-more-options.sh Range-diff against v2: 1: 5ef315240a ! 1: df8c4ed2e9 rebase -i: add --ignore-whitespace flag @@ Documentation/git-rebase.txt: your branch contains commits which were dropped, t with `--keep-base` in order to drop those commits from your branch. --ignore-whitespace:: -+ Behaves differently depending on which backend is selected. ++ Ignore whitespace differences when trying to reconcile ++differences. Currently, each backend implements an approximation of ++this behavior: ++ +apply backend: When applying a patch, ignore changes in whitespace in -+context lines. ++context lines. Unfortunately, this means that if the "old" lines being ++replaced by the patch differ only in whitespace from the existing ++file, you will get a merge conflict instead of a successful patch ++application. ++ +merge backend: Treat lines with only whitespace changes as unchanged -+when merging. ++when merging. Unfortunately, this means that any patch hunks that were ++intended to modify whitespace and nothing else will be dropped, even ++if the other side had no changes that conflicted. + --whitespace=