On Wed, Jun 6, 2018 at 10:06 PM, Elijah Newren wrote:
>
> I tend to think git-rebase--merge is less popular than the other rebase
> types, leading to it being more overlooked and less well tested than the
> other ones. This git-$cmd usage seems to support that argument.
>
>
On Sat, Jun 2, 2018 at 11:58 PM, Elijah Newren wrote:
> builtin/merge.c contains this important requirement for merge strategies:
>
> ...the index must be in sync with the head commit. The strategies are
> responsible to ensure this.
>
> However, Documentation/
Subject line: unpack-trees rather than unpack-tress.
On Wed, Jun 6, 2018 at 9:49 AM, Nguyễn Thái Ngọc Duy wrote:
> Prior to fba92be8f7, this code implicitly (and incorrectly) assumes
> the_index when running the exclude machinery. fba92be8f7 helps show
> this problem clearer because unpack-tree
On Wed, Jun 6, 2018 at 9:49 AM, Nguyễn Thái Ngọc Duy wrote:
> v4 fixes some commit messages and killed a couple more the_index
> references after I tried to merge this with 'pu'
Thanks for tackling this. The first 8 patches look good to me other
than the typo I pointed out on patch 4. However,
SE-m.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 26 --
git-rebase.sh | 30 +-
t/t3400-rebase.sh | 7 ---
t/t3401-rebase-and-am-rename.sh | 18 +-
t/t3404-rebase-int
CABPp-BGxaroePB6aKWAkZeADLB7VE3y1CPy2RyNwpn=+c01...@mail.gmail.com/
To get this series with the preparatory fixups:
Fetch-It-Via: git fetch https://github.com/newren/git rebase-new-default
Elijah Newren (3):
git-rebase, sequencer: add a --quiet option for the interactive
machinery
rebase: Implement --merge vi
covered different rebase
flavors. I think this is just attributable to this difference.
Signed-off-by: Elijah Newren
---
.gitignore| 1 -
Documentation/git-rebase.txt | 16 +--
Makefile | 1 -
git-rebase--interactive.sh| 5
een quieter. As such, we only drop a few
informational messages -- "Rebasing (n/m)" and "Succesfully rebased..."
Signed-off-by: Elijah Newren
---
git-rebase--interactive.sh | 9 +++--
git-rebase.sh | 2 +-
sequencer.c| 19 +-
On Wed, Jun 6, 2018 at 10:02 AM, Nguyễn Thái Ngọc Duy wrote:
> Since attr checking API now take the index, there's no need to set an
> index in advance with this call. Most call sites are straightforward
> because they either pass the_index or NULL (which defaults back to
> the_index previously).
On Wed, Jun 6, 2018 at 10:02 AM, Nguyễn Thái Ngọc Duy wrote:
> diff --git a/merge-recursive.c b/merge-recursive.c
> index b404ebac7c..4f054d6dbb 100644
> --- a/merge-recursive.c
> +++ b/merge-recursive.c
> @@ -315,7 +315,7 @@ static int add_cacheinfo(struct merge_options *o,
> struct cache
On Sat, Jun 9, 2018 at 11:45 AM, Duy Nguyen wrote:
> On Sat, Jun 9, 2018 at 8:10 PM Elijah Newren wrote:
>>
>> On Wed, Jun 6, 2018 at 10:02 AM, Nguyễn Thái Ngọc Duy
>> wrote:
>> > diff --git a/merge-recursive.c b/merge-recursive.c
>> > index b404eba
On Thu, Jun 7, 2018 at 12:44 AM, Elijah Newren wrote:
> On Wed, Jun 6, 2018 at 9:49 AM, Nguyễn Thái Ngọc Duy
> wrote:
>> v4 fixes some commit messages and killed a couple more the_index
>> references after I tried to merge this with 'pu'
>
> Thanks for tackli
On Sat, Jun 9, 2018 at 12:01 PM, Christoph Böhmwalder
wrote:
> Hi,
>
> Since this is a use case that actually comes up quite often in
> day-to-day use, especially among git beginners, I was wondering: is
> there a specific reason why a command like "fetch changes from remote,
> overwriting everyth
==
> -Always commit your fixes to the oldest supported branch that require
> +Always commit your fixes to the oldest supported branch that requires
> them. Then (periodically) merge the integration branches upwards into each
> other.
> =========
Thanks for sending in the fix.
Reviewed-by: Elijah Newren
Hi Dscho,
On Sat, Jun 9, 2018 at 2:45 PM, Johannes Schindelin
wrote:
> On Thu, 7 Jun 2018, Elijah Newren wrote:
>
>> While 'quiet' and 'interactive' may sound like antonyms, the interactive
>> machinery actually has logic that implements several
>&
Hi Dscho,
On Sat, Jun 9, 2018 at 3:04 PM, Johannes Schindelin
wrote:
> On Thu, 7 Jun 2018, Elijah Newren wrote:
>
>> diff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase.txt
>> index 451252c173..28d1658d7a 100644
>> --- a/Documentation/git-rebase.txt
&g
Hi Dscho,
On Sat, Jun 9, 2018 at 3:11 PM, Johannes Schindelin
wrote:
> On Thu, 7 Jun 2018, Elijah Newren wrote:
>
>> am-based rebases suffer from an reduced ability to detect directory
>> renames upstream, which is fundamental to the fact that it throws away
>> informati
Signed-off-by: Elijah Newren
---
merge-recursive.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/merge-recursive.c b/merge-recursive.c
index ac27abbd4c..921f8e2d2d 100644
--- a/merge-recursive.c
+++ b/merge-recursive.c
@@ -539,7 +539,7 @@ static void
from
process_entry().
Acked-by: Johannes Schindelin
Signed-off-by: Elijah Newren
---
merge-recursive.c | 86 +++
1 file changed, 43 insertions(+), 43 deletions(-)
diff --git a/merge-recursive.c b/merge-recursive.c
index 910f0b70f0..7cf11dc04c 100644
--- a/
Various refactorings throughout the code have left lots of alignment
issues that were driving me crazy; fix them.
Acked-by: Johannes Schindelin
Signed-off-by: Elijah Newren
---
merge-recursive.c | 75 ---
1 file changed, 38 insertions(+), 37
ned-off-by: Elijah Newren
---
merge-recursive.c | 15 +++
1 file changed, 15 insertions(+)
diff --git a/merge-recursive.c b/merge-recursive.c
index 7cf11dc04c..284b27d895 100644
--- a/merge-recursive.c
+++ b/merge-recursive.c
@@ -1476,6 +1476,21 @@ static int handle_change_del
that have since graduated, and a couple that
were overlooked previously.
* Patch #3 is entirely new.
* Re-wrapped the commit message of the final patch.
(range-diff below)
Elijah Newren (6):
merge-recursive: fix miscellaneous grammar error in comment
merge-recursive: fix numerous
Signed-off-by: Elijah Newren
---
merge-recursive.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/merge-recursive.c b/merge-recursive.c
index 09c249b93e..5538038178 100644
--- a/merge-recursive.c
+++ b/merge-recursive.c
@@ -998,10 +998,10 @@ static int
: Johannes Schindelin
Signed-off-by: Elijah Newren
---
merge-recursive.c | 28 +---
1 file changed, 17 insertions(+), 11 deletions(-)
diff --git a/merge-recursive.c b/merge-recursive.c
index 5538038178..910f0b70f0 100644
--- a/merge-recursive.c
+++ b/merge-recursive.c
Hi Phillip,
On Sun, Jun 10, 2018 at 12:26 PM, Phillip Wood
wrote:
> On 07/06/18 06:07, Elijah Newren wrote:
>>
>> Signed-off-by: Elijah Newren
>> ---
>> git-rebase.sh | 6 +-
>> 1 file changed, 1 insertion(+), 5 deletions(-)
>>
>> diff -
On Sun, Jun 10, 2018 at 3:56 AM, René Scharfe wrote:
> Am 10.11.2017 um 20:05 schrieb Elijah Newren:
>> +static struct dir_rename_entry *check_dir_renamed(const char *path,
>> + struct hashmap *dir_renames)
>> {
>&g
Hi Phillip
On Sun, Jun 10, 2018 at 12:40 PM, Phillip Wood
wrote:
>> Documentation/git-rebase.txt | 15 +--
>> git-rebase.sh | 17 +
>> t/t3422-rebase-incompatible-options.sh | 10 +-
>> 3 files changed, 35 insertions(+),
Another thing I missed...
On Sun, Jun 10, 2018 at 12:40 PM, Phillip Wood
wrote:
> On 07/06/18 06:06, Elijah Newren wrote:
>> Some exceptions I left out:
>>
>>* --merge and --interactive are technically incompatible since they are
>> supposed to run differ
Hi Phillip,
On Mon, Jun 11, 2018 at 8:16 AM, Phillip Wood wrote:
> On 11/06/18 15:42, Elijah Newren wrote:
>> However, we have a bigger problem with empty commits, in that there
>> are really three modes rather than two:
>>* Automatically drop empty commits (defaul
Hi Duy,
On Mon, Jun 11, 2018 at 9:05 AM, Duy Nguyen wrote:
> On Sat, Jun 9, 2018 at 9:58 PM Elijah Newren wrote:
>> I read over the rest. Found a small grammatical error in a commit
>> message. Found multiple places that still need conversion, from
>> pushing up &th
On Tue, Jun 5, 2018 at 12:14 AM, Elijah Newren wrote:
> On Sun, Jun 3, 2018 at 8:19 PM, Junio C Hamano wrote:
>> Elijah Newren writes:
>>
>>> `git merge-recursive` does a three-way merge between user-specified trees
>>> base, head, and remote. Since the user i
On Mon, Jun 11, 2018 at 9:24 AM, Duy Nguyen wrote:
>> I was just about to send you an email to ask if you were continuing on
>> with the series. I need diff-lib.c converted in order to make the
>> changes Junio suggested to index_has_changes at
>> https://public-inbox.org/git/xmqqvaaz5jcv@git
Hi Junio,
On Mon, Jun 11, 2018 at 10:44 AM, Junio C Hamano wrote:
> Elijah Newren writes:
>
>> In short, while interactive-based and merge-based rebases handle
>> directory rename detection fine, am-based rebases do not. This
>> inconsistency may frustrate or sur
Hi Alban,
On Mon, Jun 11, 2018 at 6:57 AM, Alban Gruin wrote:
> This rewrites the edit-todo functionality from shell to C.
>
> To achieve that, a new command mode, `edit-todo`, is added, and the
> `write-edit-todo` flag is removed, as the shell script does not need to
> write the edit todo help m
renames and somehow simplify its
output, so it may be helpful to avoid implying that diff has any new
capability here.)
Signed-off-by: Elijah Newren
---
After thinking for a while about my RFC at
https://public-inbox.org/git/cabpp-bf4gbwvrha3d1vqxusnh3as9xvlqteuemfmldkpccy...@mail.gmail.com/
this
Hi Alban,
On Thu, Jun 14, 2018 at 1:24 PM, Alban Gruin wrote:
> Le 14/06/2018 à 22:14, Junio C Hamano a écrit :
>> Alban Gruin writes:
>>
>>> diff --git a/builtin/rebase--helper.c b/builtin/rebase--helper.c
>>> index ded5e291d..d2990b210 100644
>>> --- a/builtin/rebase--helper.c
>>> +++ b/builti
On Thu, Jun 14, 2018 at 10:18 AM, Duy Nguyen wrote:
> On Mon, Jun 11, 2018 at 06:49:00PM +0200, Duy Nguyen wrote:
>> On Mon, Jun 11, 2018 at 6:44 PM Elijah Newren wrote:
>> > > What about merge-recursive.c? Given that this whole thing will take
>> > > many releas
to get to this point in the code:
* !!res (i.e. patch application failed)
* item->command < TODO_SQUASH
* item->command != TODO_EDIT
* !is_fixup(item->command) [i.e. not squash or fixup]
So that means this can only be a failed patch application that is either a
pick, revert, or re
SQUASH
* item->command != TODO_EDIT
* !is_fixup(item->command) [i.e. not squash or fixup]
So that means this can only be a failed patch application that is either a
pick, revert, or reword. For any of those cases we want a new commit, so
we should not set the to_amend flag.
Signed-off-by: El
git rebase has many options that only work with one of its three backends.
It also has a few other pairs of incompatible options. Document these.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 84
1 file changed, 76 insertions(+), 8
to receive an error rather than having options be silently ignored.
Signed-off-by: Elijah Newren
---
t/t3422-rebase-incompatible-options.sh | 69 ++
1 file changed, 69 insertions(+)
create mode 100755 t/t3422-rebase-incompatible-options.sh
diff --git a/t/t3422-rebase
folks will object
to some of these patches. I've tried to divide them up so that any parts
we decide to drop or redo can be more easily excised.
No branch-diff; because it's a significant re-work; instead I'll comment
briefly on the individual patches...
Elijah Newren (7):
signoff is not specific to the am-backend. Also, re-order a few options
to make like things (e.g. strategy and strategy-option) be near each
other.
---
git-rebase.sh | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/git-rebase.sh b/git-rebase.sh
index 40be59ecc4..bf71b7fa2
n't implement a --quiet mode (perhaps since
cherry-pick itself does not implement one). However, the interactive
mode is more quiet than the other modes in general with progress
messages, so one could argue that it's already quiet.
Signed-off-by: Elijah N
ional.) Document these differences.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 57
1 file changed, 57 insertions(+)
diff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase.txt
index adccc15284..0dbfab06d0 100644
uite synonyms simply leads to
confusion. Adjust the documentation to match reality.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 35 ++-
1 file changed, 10 insertions(+), 25 deletions(-)
diff --git a/Documentation/git-rebase.txt b/Documentation
am-based rebases already apply commits with an empty commit message
without requiring the user to specify an extra flag. Make merge-based and
interactive-based rebases behave the same.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 10 --
git-rebase.sh
On Fri, Jun 15, 2018 at 10:41 PM, Nguyễn Thái Ngọc Duy
wrote:
> This is the beginning of the end of the_index. The problem with
> the_index is it lets library code anywhere access it freely. This is
> not good because from high level you may not realize that the_index is
> being used while you don
ns this can only be a failed patch application that is either a
> pick, revert, or reword. We only need to amend HEAD when rewording the
> root commit or a commit that has been fast-forwarded, for any of the other
> cases we want a new commit, so we should not set the to_amend flag.
&g
Hi Dscho,
On Sun, Jun 17, 2018 at 2:44 PM, Johannes Schindelin
wrote:
> I was really referring to speed. But I have to admit that I do not have
> any current numbers.
>
> Another issue just hit me, though: rebase --am does not need to look at as
> many Git objects as rebase --merge or rebase -i.
Hi Phillip,
On Sun, Jun 17, 2018 at 8:30 AM, Phillip Wood wrote:
> Looking at the option parsing in git-rebase.sh it appears that it does not
> check for --no-allow-empty-message so there's no way to turn off the default
> for those modes that support it. I'm not sure what to think of this chang
On Sun, Jun 17, 2018 at 8:38 AM, Phillip Wood wrote:
>> +Other incompatible flag pairs:
>> +
>> + * --preserve-merges && --interactive
>> + * --preserve-merges && --signoff
>> + * --preserve-merges && --rebase-merges
>> + * --rebase-merges && --strategy
>
> Does --rebase-merges support --strategy-
Hi Eric,
On Sun, Jun 17, 2018 at 10:15 AM, Eric Sunshine wrote:
> On Sun, Jun 17, 2018 at 1:59 AM Elijah Newren wrote:
>> git rebase has many options that only work with one of its three backends.
>> It also has a few other pairs of incompatible options. Document these.
>
to receive an error rather than having options be silently ignored.
Signed-off-by: Elijah Newren
---
t/t3422-rebase-incompatible-options.sh | 89 ++
1 file changed, 89 insertions(+)
create mode 100755 t/t3422-rebase-incompatible-options.sh
diff --git a/t/t3422-rebase
appears no one has ever requested a --no-allow-empty-message flag to
change this behavior, make --allow-empty-message the default so that
merge-based and interactive-based rebases will behave the same.
Signed-off-by: Elijah Newren
---
See also
https://public-inbox.org/git/CABPp-BHrcUHX_zHxpojV5=sxJ1
signoff is not specific to the am-backend. Also, re-order a few options
to make like things (e.g. strategy and strategy-option) be near each
other.
---
git-rebase.sh | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/git-rebase.sh b/git-rebase.sh
index 40be59ecc4..bf71b7fa2
ional.) Document these differences.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 57
1 file changed, 57 insertions(+)
diff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase.txt
index 7de6523931..340137e2cf 100644
git rebase has many options that only work with one of its three backends.
It also has a few other pairs of incompatible options. Document these.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 85
1 file changed, 77 insertions(+), 8
n't implement a --quiet mode (perhaps since
cherry-pick itself does not implement one). However, the interactive
mode is more quiet than the other modes in general with progress
messages, so one could argue that it's already quiet.
Signed-off-by: Elijah N
uite synonyms simply leads to
confusion. Adjust the documentation to match reality.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 35 ++-
1 file changed, 10 insertions(+), 25 deletions(-)
diff --git a/Documentation/git-rebase.txt b/Documentation
--preserve-merges or --rebase-merges
- Slightly more detail in the commit message for making -m and -i behave
the same with empty commit messages as am-based rebases.
Many thanks to Phillip for reviewing the last series, and Eric who pointed
out the wording improvements.
Elijah Newren (7
Hi Dscho,
Thanks for all the food for thought. This is awesome.
On Thu, Jun 21, 2018 at 3:57 AM, Johannes Schindelin
wrote:
> On Wed, 20 Jun 2018, Elijah Newren wrote:
>> On Sun, Jun 17, 2018 at 2:44 PM, Johannes Schindelin
>> wrote:
>>
>> > I was really ref
On Thu, Jun 21, 2018 at 12:47 PM, Junio C Hamano wrote:
> Elijah Newren writes:
>
>> @@ -280,8 +286,10 @@ other words, the sides are swapped.
>> +
>> Because 'git rebase' replays each commit from the working branch
>> on top of the branch using
On Thu, Jun 21, 2018 at 12:58 PM, Junio C Hamano wrote:
> Elijah Newren writes:
>
>> signoff is not specific to the am-backend. Also, re-order a few options
>> to make like things (e.g. strategy and strategy-option) be near each
>> other.
>> ---
>> git-reb
On Thu, Jun 21, 2018 at 1:04 PM, Junio C Hamano wrote:
> Elijah Newren writes:
>
>> + git checkout B &&
>> + # This is indented with HT SP HT.
>> + echo " foo();" >>foo &&
>
> I often wonder, whenever I see a ne
On Thu, Jun 21, 2018 at 1:29 PM, Junio C Hamano wrote:
> Elijah Newren writes:
>
>> +if test -n "$git_am_opt"; then
>> + incompatible_opts=$(echo "$git_am_opt" | sed -e 's/ -q//')
>
> This is probably just a taste-thing, but I'd pr
On Thu, Jun 21, 2018 at 1:46 PM, Junio C Hamano wrote:
> Elijah Newren writes:
>
>> rebase was taught the --force-rebase option in commit b2f82e05de ("Teach
>> rebase to rebase even if upstream is up to date", 2009-02-13). This flag
>> worked for the am and
Hi Junio,
On Thu, Jun 21, 2018 at 1:44 PM, Junio C Hamano wrote:
> Elijah Newren writes:
>
>> +BEHAVIORAL INCONSISTENCIES
>> +--
>> +
>> + * --no-ff vs. --force-rebase
>
> Do we want to `--quote` these?
Ah, good point.
>>
to receive an error rather than having options be silently ignored.
Signed-off-by: Elijah Newren
---
t/t3422-rebase-incompatible-options.sh | 88 ++
1 file changed, 88 insertions(+)
create mode 100755 t/t3422-rebase-incompatible-options.sh
diff --git a/t/t3422-rebase
signoff is not specific to the am-backend. Also, re-order a few options
to make like things (e.g. strategy and strategy-option) be near each
other.
Signed-off-by: Elijah Newren
---
git-rebase.sh | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/git-rebase.sh b/git
series to
handle this? (If so, what changes should those be?)
Elijah Newren (9):
git-rebase.txt: document incompatible options
git-rebase.sh: update help messages a bit
t3422: new testcases for checking when incompatible options passed
git-rebase: error out when incompatible options
uite synonyms simply leads to
confusion. Adjust the documentation to match reality.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 30 ++
1 file changed, 10 insertions(+), 20 deletions(-)
diff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase
he rareness of this
situation made it difficult to reason about, so when folks did eventually
notice this behavior, they assumed it was there for a good reason and just
added an --allow-empty-message flag. In my opinion, stopping on such
messages not desirable in any of these cases, even the (ex
to directory rename detection.
Signed-off-by: Elijah Newren
---
t/t3401-rebase-and-am-rename.sh | 105
1 file changed, 105 insertions(+)
create mode 100755 t/t3401-rebase-and-am-rename.sh
diff --git a/t/t3401-rebase-and-am-rename.sh b/t/t3401-rebase-and-am
ional.) Document these differences.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 32 +++
.../technical/directory-rename-detection.txt | 23 +
2 files changed, 55 insertions(+)
diff --git a/Documentation/git-rebase.txt b/Document
git rebase has many options that only work with one of its three backends.
It also has a few other pairs of incompatible options. Document these.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 85
1 file changed, 77 insertions(+), 8
Signed-off-by: Elijah Newren
---
.../technical/directory-rename-detection.txt | 92 +++
1 file changed, 92 insertions(+)
create mode 100644 Documentation/technical/directory-rename-detection.txt
diff --git a/Documentation/technical/directory-rename-detection.txt
b
n't implement a --quiet mode (perhaps since
cherry-pick itself does not implement one). However, the interactive
mode is more quiet than the other modes in general with progress
messages, so one could argue that it's already quiet.
Signed-off-by: Elijah N
On Wed, Jun 6, 2018 at 10:04 PM, Elijah Newren wrote:
> Add a simple directory rename testcase, in conjunction with each of the
> types of rebases:
> git-rebase--interactive
> git-rebase--am
> git-rebase--merge
> and also use the same testcase for
> git am --3way
>
B:a E2:a/file C:a/file A:ignore-me &&
> git rev-parse >actual \
> :3:a :2:a/file :1:a/file :0:ignore-me &&
> - test_cmp expect actual
> + test_cmp expect actual &&
>
> test_path_is_file a~D^0
> )
Eek, how did that become c:a/file when it was originally C:a/file?
Thanks for spotting the regression and fixing.
Reviewed-by: Elijah Newren
On Tue, Jun 26, 2018 at 12:29 AM, Eric Sunshine wrote:
> These tests intentionally break the &&-chain to manually check the exit
> code of invoked commands which they expect to fail, and invert that
> local expected failure into a successful exit code for the test overall.
> Such manual exit code
/29 "t7400" and (especially) 13/29 "lib-submodule-update"
> Jonathan Tan - 10/29 "t9001"
> Elijah Newren - 6/29 "t6036"
Commented on the patch in question; 6/29 looks good.
I also looked over the rest of the series. Apart from the ones you
specifically cal
Hi Eric,
On Tue, Jun 26, 2018, 2:31 AM Eric Sunshine wrote:
>
> On Tue, Jun 26, 2018 at 5:20 AM Elijah Newren wrote:
> > On Tue, Jun 26, 2018 at 12:29 AM, Eric Sunshine
> > wrote:
> > > Aside from identifying a rather significant number of &&-chain breaks,
On Tue, Jun 26, 2018 at 1:22 PM, Jeff King wrote:
> On Tue, Jun 26, 2018 at 04:17:08PM -0400, Jeff King wrote:
>
>> I'm not sure if there's a good solution, though. Even if you retained
>> the subshells and instead did a chain-lint inside each subshell, like
>> this:
>
> So obviously that means "I
On Tue, Jun 26, 2018 at 2:01 PM, Jeff King wrote:
> On Tue, Jun 26, 2018 at 04:46:18PM -0400, Eric Sunshine wrote:
>> Some of these dangers can be de-thoothed during the linting phase by
>> defining do-nothing shell functions:
>>
>> cp () { :; }
>> mv () { :; }
>> ln () { :; }
>>
>> T
On Tue, Jun 26, 2018 at 11:17 AM, Junio C Hamano wrote:
> Elijah Newren writes:
>
>> +# Rebase has lots of useful options like --whitepsace=fix, which are
>> +# actually all built in terms of flags to git-am. Since neither
>> +# --merge nor --interactive (nor any opti
to directory rename detection.
Signed-off-by: Elijah Newren
---
t/t3401-rebase-and-am-rename.sh | 105
1 file changed, 105 insertions(+)
create mode 100755 t/t3401-rebase-and-am-rename.sh
diff --git a/t/t3401-rebase-and-am-rename.sh b/t/t3401-rebase-and-am
Signed-off-by: Elijah Newren
---
.../technical/directory-rename-detection.txt | 92 +++
1 file changed, 92 insertions(+)
create mode 100644 Documentation/technical/directory-rename-detection.txt
diff --git a/Documentation/technical/directory-rename-detection.txt
b
he rareness of this
situation made it difficult to reason about, so when folks did eventually
notice this behavior, they assumed it was there for a good reason and just
added an --allow-empty-message flag. In my opinion, stopping on such
messages not desirable in any of these cases, even the (ex
signoff is not specific to the am-backend. Also, re-order a few options
to make like things (e.g. strategy and strategy-option) be near each
other.
Signed-off-by: Elijah Newren
---
git-rebase.sh | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/git-rebase.sh b/git
git rebase has many options that only work with one of its three backends.
It also has a few other pairs of incompatible options. Document these.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 85
1 file changed, 77 insertions(+), 8
ional.) Document these differences.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 32 +++
.../technical/directory-rename-detection.txt | 23 +
2 files changed, 55 insertions(+)
diff --git a/Documentation/git-rebase.txt b/Document
to receive an error rather than having options be silently ignored.
Signed-off-by: Elijah Newren
---
t/t3422-rebase-incompatible-options.sh | 88 ++
1 file changed, 88 insertions(+)
create mode 100755 t/t3422-rebase-incompatible-options.sh
diff --git a/t/t3422-rebase
hers might suggest.
* I'm assuming the --keep-empty and/or --empty={drop,halt,keep} (see
comments on patch 5 of v3) can be resolved in a later series.
Elijah Newren (9):
git-rebase.txt: document incompatible options
git-rebase.sh: update help messages a bit
t3422: new testcases fo
uite synonyms simply leads to
confusion. Adjust the documentation to match reality.
Signed-off-by: Elijah Newren
---
Documentation/git-rebase.txt | 30 ++
1 file changed, 10 insertions(+), 20 deletions(-)
diff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase
n't implement a --quiet mode (perhaps since
cherry-pick itself does not implement one). However, the interactive
mode is more quiet than the other modes in general with progress
messages, so one could argue that it's already quiet.
Signed-off-by: Elijah N
We are not passing the same args to merge strategies when we are doing an
--interactive rebase as we do with a --merge rebase. The merge strategy
should not need to be aware of which type of rebase is in effect. Add a
testcase which checks for the appropriate args.
Signed-off-by: Elijah Newren
The interactive machinery for git rebase can accept special merge
strategies or strategy options, but has a bug in its handling of
strategy options. This short series patches that.
Changes since v1:
- Small change to the second commit message
- Addition of a cover letter. :-)
Elijah Newren
e $merge_base -- $head $remote
instead of the expected/desired
git merge-$strategy --ours --renormalize $merge_base -- $head $remote
Remove the extra spaces so that when it goes through split_cmdline() we end
up with the desired command line.
Signed-off-by: Elijah Newren
---
git-rebase.sh
Signed-off-by: Elijah Newren
---
Changes since v1:
- Fixed up commit message (move below comment to below diffstat as
originally intended)
Long term I just want to make git-rebase--merge go away, so this patch
will eventually be obsoleted. But since I'm waiting for multiple
topi
501 - 600 of 1788 matches
Mail list logo