git format-patch
Jeff King writes:
> I wondered if we could be a bit more clever with the definition of
> "struct option". Something like:
>
> diff --git a/parse-options.h b/parse-options.h
> index 38a33a087e..99c7ff466d 100644
> --- a/parse-options.h
> +++ b/parse-options.h
> @@ -126,7 +126,10 @@ struct option {
Dear Pratyush,
I just noticed that the 'Revert Last Hunk' menu entry is enabled in
the stage-list. But I think it should be disabled, like the 'Revert
Hunk' and 'Revert Line' menu entry.
Can you confirm this?
Thanks.
Bert
On Wed, Aug 28, 2019 at 11:57 PM Pratyush Yadav wrote:
>
> Accidental
'git format-patch -o ' did an equivalent of 'mkdir '
not 'mkdir -p ', which is being corrected.
Avoid the usage of 'adjust_shared_perm' on the leading directories which
may have security implications. Achieved by temporarily disabling of
'config.sharedRepository' like 'git init' does.
Signed-off-
The 'format.outputDirectory' configuration is only able to store constant
directory names. Though some may use
$ git format-patch -o $(createdir) …
to name the directory dynamically. Provide a new configuration to be able
to store such a command too.
Signed-off-by: Bert Wesarg
---
Changes i
Dear Git developers,
I’m an Outreachy applicant, I would like to make my contribution to
apply to this Outreachy internship period.
I have found this issue tagged as open and goodfirstissue:
https://github.com/gitgitgadget/git/issues/230
But there is a PR from 4 months ago:
https://github.com/git
On 10/18/2019 12:07 PM, SZEDER Gábor wrote:
> On Tue, Oct 15, 2019 at 01:55:48PM +, Derrick Stolee via GitGitGadget
> wrote:
>> From: Derrick Stolee
>>
>> The sparse-checkout feature is mostly hidden to users, as its
>> only documentation is supplementary information in the docs for
>> 'git r
On 10/18/2019 11:31 AM, SZEDER Gábor wrote:
> On Tue, Oct 15, 2019 at 01:55:56PM +, Derrick Stolee via GitGitGadget
> wrote:
>> Running 'git read-tree -mu HEAD' on this file had the following
>> performance:
>>
>> core.sparseCheckout=false: 0.21 s (0.00 s)
>> core.sparseCheckout=tru
On 10/18/2019 4:40 PM, SZEDER Gábor wrote:
> On Fri, Oct 18, 2019 at 10:24:21PM +0200, SZEDER Gábor wrote:
>> On Tue, Oct 15, 2019 at 01:56:02PM +, Derrick Stolee via GitGitGadget
>> wrote:
>>> From: Derrick Stolee
>>>
>>> The sparse-checkout builtin used 'git read-tree -mu HEAD' to update th
On 10/17/2019 7:53 PM, Jon Simons wrote:
> On 10/15/19 6:55 AM, Derrick Stolee via GitGitGadget wrote:
>> V4 UPDATE: Rebased on latest master to include ew/hashmap and
>> ds/include-exclude in the base.
>
> I did a partial review of the v4 patches out of curiosity and I notice
> in sparse-checkout
On 10/16/2019 3:00 PM, Elijah Newren wrote:
> On Tue, Oct 15, 2019 at 6:56 AM Derrick Stolee via GitGitGadget
> wrote:
>> +DESCRIPTION
>> +---
>> +
>> +Initialize and modify the sparse-checkout configuration, which reduces
>> +the checkout to a set of directories given by a list of prefixe
From: Jiang Xin
Hi,
Git v2.24.0-rc0 has been released, and it's time to start new round of git l10n.
This time there are 35 updated messages need to be translated since last update:
l10n: git.pot: v2.24.0 round 1 (35 new, 16 removed)
Generate po/git.pot from v2.24.0-rc0 for git v2.
Please ignore this. Will rebase on 2.24-rc0 and will only include the
test changes.
Bert
On Mon, Oct 21, 2019 at 12:25 PM Bert Wesarg wrote:
>
> 'git format-patch -o ' did an equivalent of 'mkdir '
> not 'mkdir -p ', which is being corrected.
>
> Avoid the usage of 'adjust_shared_perm' on the le
As noted by Gábor in [1], the new tests in edefc31873 ("format-patch:
create leading components of output directory", 2019-10-11) cannot be
run independently. Fix this.
[1] https://public-inbox.org/git/20191011144650.gm29...@szeder.dev/
Signed-off-by: Bert Wesarg
---
Cc: Denton Liu
Cc: Junio C
From: Derrick Stolee
The instructions for disabling a sparse-checkout to a full
working directory are complicated and non-intuitive. Add a
subcommand, 'git sparse-checkout disable', to perform those
steps for the user.
Signed-off-by: Derrick Stolee
---
Documentation/git-sparse-checkout.txt | 2
From: Derrick Stolee
The sparse-checkout feature is mostly hidden to users, as its
only documentation is supplementary information in the docs for
'git read-tree'. In addition, users need to know how to edit the
.git/info/sparse-checkout file with the right patterns, then run
the appropriate 'git
V4 UPDATE: Rebased on latest master to include ew/hashmap and
ds/include-exclude in the base.
This series makes the sparse-checkout feature more user-friendly. While
there, I also present a way to use a limited set of patterns to gain a
significant performance boost in very large repositories.
Sp
From: Derrick Stolee
The parent and recursive patterns allowed by the "cone mode"
option in sparse-checkout are restrictive enough that we
can avoid using the regex parsing. Everything is based on
prefix matches, so we can use hashsets to store the prefixes
from the sparse-checkout file. When che
From: Derrick Stolee
The 'git sparse-checkout set' subcommand takes a list of patterns
and places them in the sparse-checkout file. Then, it updates the
working directory to match those patterns. For a large list of
patterns, the command-line call can get very cumbersome.
Add a '--stdin' option
From: Derrick Stolee
When a large repository has many sparse-checkout patterns, the
process for updating the skip-worktree bits can take long enough
that a user gets confused why nothing is happening. Update the
clear_ce_flags() method to write progress.
Signed-off-by: Derrick Stolee
---
cache
From: Derrick Stolee
If two 'git sparse-checkout set' subcommands are launched at the
same time, the behavior can be unexpected as they compete to write
the sparse-checkout file and update the working directory.
Take a lockfile around the writes to the sparse-checkout file. In
addition, acquire
From: Derrick Stolee
The read-tree builtin has a --verbose option that signals to show
progress and other data while updating the index. Update this to
be on by default when stderr is a terminal window.
This will help tools like 'git sparse-checkout' to automatically
benefit from progress indica
From: Derrick Stolee
The sparse-checkout builtin used 'git read-tree -mu HEAD' to update the
skip-worktree bits in the index and to update the working directory.
This extra process is overly complex, and prone to failure. It also
requires that we write our changes to the sparse-checkout file befo
From: Derrick Stolee
The 'git sparse-checkout set' subcommand takes a list of patterns
as arguments and writes them to the sparse-checkout file. Then, it
updates the working directory using 'git read-tree -mu HEAD'.
The 'set' subcommand will replace the entire contents of the
sparse-checkout fil
From: Derrick Stolee
During the development of the sparse-checkout "cone mode" feature,
an incorrect placement of the initializer for "use_cone_patterns = 1"
caused warnings to show up when a .gitignore file was present with
non-cone-mode patterns. This was fixed in the original commit
introducin
From: Jeff Hostetler
When Git updates the working directory with the sparse-checkout
feature enabled, the unpack_trees() method calls clear_ce_flags()
to update the skip-wortree bits on the cache entries. This
check can be expensive, depending on the patterns used.
Add trace2 regions around the
From: Derrick Stolee
To make the cone pattern set easy to use, update the behavior of
'git sparse-checkout [init|set]'.
Add '--cone' flag to 'git sparse-checkout init' to set the config
option 'core.sparseCheckoutCone=true'.
When running 'git sparse-checkout set' in cone mode, a user only
needs
From: Derrick Stolee
When someone wants to clone a large repository, but plans to work
using a sparse-checkout file, they either need to do a full
checkout first and then reduce the patterns they included, or
clone with --no-checkout, set up their patterns, and then run
a checkout manually. This
From: Derrick Stolee
The sparse-checkout feature can have quadratic performance as
the number of patterns and number of entries in the index grow.
If there are 1,000 patterns and 1,000,000 entries, this time can
be very significant.
Create a new Boolean config option, core.sparseCheckoutCone, to
From: Derrick Stolee
Getting started with a sparse-checkout file can be daunting. Help
users start their sparse enlistment using 'git sparse-checkout init'.
This will set 'core.sparseCheckout=true' in their config, write
an initial set of patterns to the sparse-checkout file, and update
their wor
From: Derrick Stolee
If a user provides folders A/ and A/B/ for inclusion in a cone-mode
sparse-checkout file, the parsing logic will notice that A/ appears
both as a "parent" type pattern and as a "recursive" type pattern.
This is unexpected and hence will complain via a warning and revert
to th
From: Derrick Stolee
The sparse-checkout feature in "cone mode" can use the fact that
the recursive patterns are "connected" to the root via parent
patterns to decide if a directory is entirely contained in the
sparse-checkout or entirely removed.
In these cases, we can skip hashing the paths wi
Here is today's test coverage report. You can find it at the normal place
[1][2][3].
I set the "master@{1}" to be the maint branch, so this should cover all new
code that
is not in the previous release.
Thanks,
-Stolee
[1] https://derrickstolee.github.io/git-test-coverage/reports/2019-10-21.ht
Hi Stolee
On 21/10/2019 14:56, Derrick Stolee via GitGitGadget wrote:
From: Derrick Stolee
The read-tree builtin has a --verbose option that signals to show
progress and other data while updating the index. Update this to
be on by default when stderr is a terminal window.
This will help tools
On 10/21/2019 11:04 AM, Phillip Wood wrote:
> Hi Stolee
>
> On 21/10/2019 14:56, Derrick Stolee via GitGitGadget wrote:
>> From: Derrick Stolee
>>
>> The read-tree builtin has a --verbose option that signals to show
>> progress and other data while updating the index. Update this to
>> be on by d
On Fri, Oct 18, 2019 at 01:35:57PM +0200, SZEDER Gábor wrote:
> > unfortunately, see two more bugs,
And there are documentation bugs as well, both user-visible (i.e. in
a man page) and in in-code comment.
> > and one of them is a "proper" bug leading to bogus
> > output:
> >
> > $ git -C WT/ re
A fairly long comment describes trie_find()'s behavior and shows
examples, but it's slightly incomplete/inaccurate. Update this
comment to specify how trie_find() handles a negative return value
from the given match function.
Furthermore, update the list of examples to include not only two but
th
If a directory in $GIT_DIR is overridden when $GIT_COMMON_DIR is set,
then usually all paths within that directory are overridden as well.
There are a couple of exceptions, though, and two of them, namely
'refs/rewritten' and 'logs/HEAD' are not mentioned in
'gitrepository-layout'. Document them a
'logs/HEAD', i.e. HEAD's reflog, is a file, but its entry in
'common_list' has the 'is_dir' bit set.
Unset that bit to make it consistent with what 'logs/HEAD' is supposed
to be.
This doesn't make a difference in behavior: check_common() is the only
function that looks at the 'is_dir' bit, and th
'logs/refs' is not a working tree-specific path, but since commit
b9317d55a3 (Make sure refs/rewritten/ is per-worktree, 2019-03-07)
'git rev-parse --git-path' has been returning a bogus path if a
trailing '/' is present:
$ git -C WT/ rev-parse --git-path logs/refs --git-path logs/refs/
/home/
An array of 'struct common_dir' instances is used to specify whether
various paths in $GIT_DIR are specific to a worktree, or are common,
i.e. belong to main worktree. The names of two fields in this
struct are somewhat confusing or ambigious:
- The path is recorded in the struct's 'dirname' fi
Hello, my name is Karina and I'm and Outreachy applicant.
I´m interested in applying to the project 'Add did you mean hints´ and
I was wondering how can I start contributing since there seem to be no
issues on the github page. Thank you!
Hi, everyone
I wrote a small follow-up post to talk about the conclusion of my GSoC
project. I believe the main remaining tasks are now finally complete
:) If you would be interested in taking a look, the post is at
https://matheustavares.gitlab.io/posts/gsoc-follow-ups
Thanks,
Matheus
On Mon, 2019-10-21 at 18:00 +0200, SZEDER Gábor wrote:
> Add the missing condition to trie_find() so it will never invoke the
> match function with a non-existing value. check_common() will then
> no
> longer have to check that it got a non-NULL value, so remove that
> condition.
...
>
> /
On Mon, Oct 21, 2019 at 12:39:16PM +0200, Miriam R. wrote:
> Dear Git developers,
> I’m an Outreachy applicant, I would like to make my contribution to
> apply to this Outreachy internship period.
Welcome, Miriam! Good to hear from you.
>
> I have found this issue tagged as open and goodfirstiss
Hello Git contributors,
This is the fourth iteration of changes for adding support for
--[no-]progress to multi-pack-index.
I'm resubmitting the series after a discussion regarding 'MIDX_PROGRESS'
that concluded with a decision to stick with the original changes in the v3
patch.
Thanks, William
From: William Baker
Add the MIDX_PROGRESS flag and update the
write|verify|expire|repack functions in midx.h
to accept a flags parameter. The MIDX_PROGRESS
flag indicates whether the caller of the function
would like progress information to be displayed.
This patch only changes the method protot
From: William Baker
Update verify_midx_file to only display progress when
the MIDX_PROGRESS flag is set.
Signed-off-by: William Baker
---
midx.c | 20
1 file changed, 12 insertions(+), 8 deletions(-)
diff --git a/midx.c b/midx.c
index 7157259ca2..35bdc5f72c 100644
--- a/m
From: William Baker
Add the --[no-]progress option to git multi-pack-index.
Pass the MIDX_PROGRESS flag to the subcommand functions
when progress should be displayed by multi-pack-index.
The progress feature was added to 'verify' in 144d703
("multi-pack-index: report progress during 'verify'", 20
From: William Baker
Add progress to write_midx_file. Progress is displayed
when the MIDX_PROGRESS flag is set.
Signed-off-by: William Baker
---
midx.c | 25 +
1 file changed, 21 insertions(+), 4 deletions(-)
diff --git a/midx.c b/midx.c
index f169a681dd..006f36b570 10
From: William Baker
Update midx_repack to only display progress when
the MIDX_PROGRESS flag is set.
Signed-off-by: William Baker
---
midx.c | 6 ++
1 file changed, 6 insertions(+)
diff --git a/midx.c b/midx.c
index 35bdc5f72c..b5f7f1c54a 100644
--- a/midx.c
+++ b/midx.c
@@ -1373,6 +1373,1
From: William Baker
Add progress to expire_midx_packs. Progress is
displayed when the MIDX_PROGRESS flag is set.
Signed-off-by: William Baker
---
midx.c | 12
1 file changed, 12 insertions(+)
diff --git a/midx.c b/midx.c
index 006f36b570..7157259ca2 100644
--- a/midx.c
+++ b/mid
On Mon, Oct 21, 2019 at 11:54:01AM -0500, Karina Saucedo wrote:
> Hello, my name is Karina and I'm and Outreachy applicant. I´m interested in
> applying to the project 'Add did you mean hints´ and I was wondering how
> can I start contributing since there seem to be no issues on the github
> page.
Hi Junio,
On Fri, 18 Oct 2019, Junio C Hamano wrote:
> Denton Liu writes:
>
> > There are many += lists in the Makefile and, over time, they have gotten
> > slightly out of order, alphabetically. Alphabetically sort all += lists
> > to bring them back in order.
> > ...
>
> Hmm. I like the gener
Hi,
On Fri, 18 Oct 2019, Phillip Wood wrote:
> Hi Denton
>
> On 16/10/2019 18:26, Denton Liu wrote:
> > Begin the process of lib-ifying the autostash code. In a future commit,
> > this will be used to implement `--autostash` in other builtins.
> >
> > This patch is best viewed with `--color-moved
On Mon, Oct 21, 2019 at 05:51:52PM +0900, Junio C Hamano wrote:
> > - void *value;
> > + union {
> > + int *intp;
> > + const char *strp;
> > + } value;
> [...]
> The side that actually use .vale would need to change for obvious
> reasons, which may be painful, but I agre
Hi Johannes,
On Mon, Oct 21, 2019 at 08:44:40PM +0200, Johannes Schindelin wrote:
> Hi Junio,
>
> On Fri, 18 Oct 2019, Junio C Hamano wrote:
>
> > Denton Liu writes:
> >
> > > There are many += lists in the Makefile and, over time, they have gotten
> > > slightly out of order, alphabetically. A
Hi,
[sorry, Phillip, my reply-all fu deserts me today, apparently.]
On Fri, 18 Oct 2019, Phillip Wood wrote:
> Hi Denton
>
> It's great to see this being libified, I've had it in mind to do this so we
> can avoid forking 'git checkout' in sequencer.c
>
> On 16/10/2019 18:26, Denton Liu wrote:
>
Hi Denton,
On Wed, 16 Oct 2019, Denton Liu wrote:
> Continue the process of lib-ifying the autostash code. In a future
> commit, this will be used to implement `--autostash` in other builtins.
>
> This patch is best viewed with `--color-moved` and
> `--color-moved-ws=allow-indentation-change`.
>
On 21/10/19 11:16AM, Bert Wesarg wrote:
> Dear Pratyush,
>
> I just noticed that the 'Revert Last Hunk' menu entry is enabled in
> the stage-list. But I think it should be disabled, like the 'Revert
> Hunk' and 'Revert Line' menu entry.
I'm not sure what you mean. There is no "Revert Last Hunk" m
Hi Denton,
On Wed, 16 Oct 2019, Denton Liu wrote:
> In rebase, one can pass the `--autostash` option to cause the worktree
> to be automatically stashed before continuing with the rebase. This
> option is missing in merge, however.
>
> Implement the `--autostash` option and corresponding `merge.a
Am 21.10.19 um 11:16 schrieb Bert Wesarg:
> Dear Pratyush,
>
> I just noticed that the 'Revert Last Hunk' menu entry is enabled in
> the stage-list. But I think it should be disabled, like the 'Revert
> Hunk' and 'Revert Line' menu entry.
>
> Can you confirm this?
Technically, it need not be dis
Hi Gábor,
On Fri, 18 Oct 2019, SZEDER Gábor wrote:
> On Fri, Oct 18, 2019 at 01:06:18PM +0200, SZEDER Gábor wrote:
> > I didn't look yesterday at all, but now I did, and, unfortunately, see
> > two more bugs
>
> The second patch is kind of a bugfix, though luckily the bug doesn't
> actually manif
Johannes Schindelin writes:
>> ... I do not particularly see this change (there may be similar
>> ones) desirable. I'd find it it be much more natural to sort
>> "commit-anything" after "commit", and that is true with or without
>> the common extension ".o" added to these entries.
>>
>> In short
On Tue, Oct 22, 2019 at 04:49:19AM +0900, Junio C Hamano wrote:
> Johannes Schindelin writes:
>
> >> ... I do not particularly see this change (there may be similar
> >> ones) desirable. I'd find it it be much more natural to sort
> >> "commit-anything" after "commit", and that is true with or
From: Johannes Schindelin
To make full use of the work that went into the Visual Studio build &
test jobs in our CI/PR builds, let's turn on strict compiler flags. This
will give us the benefit of Visual C's compiler warnings (which, at
times, seem to catch things that GCC does not catch, and vic
I made a mistake when converting the make/prove-based test job to a
test-tool run-command testsuite one: I lost the parallelization, resulting
in way slower CI runs.
Also, I forgot to build with DEVELOPER=1, i.e. with stricter compile flags.
This pair of patches fixes both issues.
Changes since
From: Johannes Schindelin
Originally, the CI/PR builds that build and test using Visual Studio
were implemented imitating `linux-clang`, i.e. still using the
`Makefile`-based build infrastructure.
Later (but still before the patches made their way into git.git's
`master`), however, this was chan
Hi Junio,
On Fri, 18 Oct 2019, Junio C Hamano wrote:
> "Johannes Schindelin via GitGitGadget"
> writes:
>
> > From: Johannes Schindelin
> >
> > Ever since worktrees were introduced, the `git_path()` function _really_
> > needed to be called e.g. to get at the path to `logs/HEAD` (`HEAD` is
> >
On 10/18/2019 8:20 PM, Emily Shaffer wrote:
> An overview of what Git object types mean and how they loosely translate
> into filesystem types users are already familiar with is a good start to
> making Git's internals less scary to users. This post is an interactive
> overview of the various types
In this blog post, we discuss updates in to the Git commit-graph
feature since it was announced shortly after Git 2.18.0. This
answers the following:
1. What is the commit-graph?
2. Why should I enable the commit-graph?
3. How do I enable it now, or disable in time for 2.24.0?
4. How do I write it
(dropping some of the other aliases from this reply)
I ran a few of the performance tests against the Linux repository
using v2.22.0, v2.23.0, and the new v2.24.0-rc0. I thought it worth
pointing out that the drastic performance improvements are due to
turning on the commit-graph by default. I had
On Mon, Oct 21, 2019 at 06:00:43PM +0200, SZEDER Gábor wrote:
> 'logs/refs' is not a working tree-specific path, but since commit
> b9317d55a3 (Make sure refs/rewritten/ is per-worktree, 2019-03-07)
> 'git rev-parse --git-path' has been returning a bogus path if a
> trailing '/' is present:
>
>
I stumbled over this during my recent work in Git GUI
[https://github.com/gitgitgadget/git/pull/361] that was originally really
only intended to use the correct hooks directory.
It turns out that my fears that index.lock was mishandled were unfounded,
hence this patch series has a lot lower priori
From: Johannes Schindelin
Without this, you cannot use `--run=<...>` to skip that part, and a run
with `--run=0` (which is a common way to determine the test case number
corresponding to a given test case title).
Signed-off-by: Johannes Schindelin
---
t/t1400-update-ref.sh | 18 ++-
From: Johannes Schindelin
Ever since worktrees were introduced, the `git_path()` function _really_
needed to be called e.g. to get at the path to `logs/HEAD` (`HEAD` is
specific to the worktree, and therefore so is its reflog). However, the
wrong path is returned for `logs/HEAD.lock`.
This does
Team,
a couple of days later than I wanted, but at least it is now here:
https://github.com/git-for-windows/git/releases/tag/v2.24.0-rc0.windows.1
Please test...
Thank you,
Johannes
On Mon, Oct 21, 2019 at 1:50 PM Derrick Stolee wrote:
> I ran a few of the performance tests against the Linux repository
> using v2.22.0, v2.23.0, and the new v2.24.0-rc0. I thought it worth
> pointing out that the drastic performance improvements are due to
> turning on the commit-graph by defa
On Mon, Oct 21, 2019 at 04:04:22PM -0700, Elijah Newren wrote:
> > 4211.3: git log --follow [...]8.56(8.41+0.15) -0.2% 3.67(3.53+0.13)
> > -57.2%
>
> Many nice speedups here, not just commit-graph (the rev-list cases)
> but also log -L (from sg/line-log-tree-diff-optim, I believe), and log
79 matches
Mail list logo