"Ben Peart" writes:
> The fact that "git checkout -b NEW" updates the index and as a
> result reflects any changes in the sparse-checkout and the issue
> Junio pointed out earlier about not calling show_local_changes
> at the end of merge_working_tree are the only difference in behavior
> I am
Re: [PATCH v3] checkout: eliminate unnecessary merge for trivial
> checkout
>
> Hi Junio,
>
> From: "Junio C Hamano"
> > "Philip Oakley" writes:
> >
> >>> > >"git checkout -b foo" (without -f -m or ) is defined
> &
Hi Junio,
From: "Junio C Hamano"
"Philip Oakley" writes:
> >"git checkout -b foo" (without -f -m or ) is defined in
> >the manual as being a shortcut for/equivalent to:
> >
> >(1a) "git branch foo"
> >(1b) "git checkout foo"
> >
> >However, it has been our experience in our o
"Philip Oakley" writes:
>> > >"git checkout -b foo" (without -f -m or ) is defined in
>> > >the manual as being a shortcut for/equivalent to:
>> > >
>> > >(1a) "git branch foo"
>> > >(1b) "git checkout foo"
>> > >
>> > >However, it has been our experience in our observed use cases
Ben,
Using a 'bottom / in-line' posting flow is much preferred, which may require
some manual editing[1], hopefully I have it about right...
Philip
--
[1] this is massaged and mangled Outlook Express, sometimes one has to work
with the tools at hand...
From: "Ben Peart"
From: Junio C Hamano
[PATCH v3] checkout: eliminate unnecessary merge for trivial
checkout
Junio C Hamano writes:
>> "git checkout -b foo" (without -f -m or ) is defined in
>> the manual as being a shortcut for/equivalent to:
>>
>> (1a) "git branch foo"
>>
Junio C Hamano writes:
>> "git checkout -b foo" (without -f -m or ) is defined in the
>> manual as being a shortcut for/equivalent to:
>>
>> (1a) "git branch foo"
>> (1b) "git checkout foo"
>>
>> However, it has been our experience in our observed use cases and all the
>> exis
"Ben Peart" writes:
> Let me see if I can better explain what I’m trying to accomplish with this
> patch.
>
> "git checkout -b foo" (without -f -m or ) is defined in the
> manual as being a shortcut for/equivalent to:
>
> (1a) "git branch foo"
> (1b) "git checkout foo"
>
>
; To: Ben Peart <mailto:peart...@gmail.com>
> Cc: mailto:git@vger.kernel.org; mailto:pclo...@gmail.com; Ben Peart
> <mailto:ben.pe...@microsoft.com>
> Subject: Re: [PATCH v3] checkout: eliminate unnecessary merge for trivial
> checkout
>
> Ben Peart <mailto:peart...@gm
Oleg Taranenko writes:
> Sorry for bothering, why not introduce a brand new option like git
> checkout -b foo --skip-worktree-merge for such rare optimization use
> case?
I am not sure what problem such a new option solves. How would you
describe and explain what "--skip-worktree-merge" option
Sorry for bothering, why not introduce a brand new option like git
checkout -b foo --skip-worktree-merge for such rare optimization use
case?
On Wed, Sep 14, 2016 at 12:34 AM, Junio C Hamano wrote:
> Ben Peart writes:
>
>> +static int needs_working_tree_merge(const struct checkout_opts *opts,
>>
Ben Peart writes:
> +static int needs_working_tree_merge(const struct checkout_opts *opts,
> + const struct branch_info *old,
> + const struct branch_info *new)
> +{
> +...
> +}
I do not think I need to repeat the same remarks on the conditions
in this helper, which hasn't changed since
Teach git to avoid unnecessary merge during trivial checkout. When
running 'git checkout -b foo' git follows a common code path through
the expensive merge_working_tree even when it is unnecessary. As a
result, 95% of the time is spent in merge_working_tree doing the 2-way
merge between the new a
13 matches
Mail list logo