All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
To: Derrick Stolee via GitGitGadget <gitgitgadget@gmail.com>
Cc: git@vger.kernel.org, newren@gmail.com, gitster@pobox.com,
	pclouds@gmail.com, jrnieder@gmail.com,
	"Martin Ågren" <martin.agren@gmail.com>,
	"Derrick Stolee" <stolee@gmail.com>,
	"SZEDER Gábor" <szeder.dev@gmail.com>,
	"Derrick Stolee" <derrickstolee@github.com>,
	"Derrick Stolee" <dstolee@microsoft.com>
Subject: Re: [PATCH v4 07/20] test-read-cache: print cache entries with --table
Date: Wed, 24 Mar 2021 02:24:22 +0100	[thread overview]
Message-ID: <87r1k5pcmx.fsf@evledraar.gmail.com> (raw)
In-Reply-To: <7ebd9570b1ad81720569a770526651c62c152b9f.1616507069.git.gitgitgadget@gmail.com>


On Tue, Mar 23 2021, Derrick Stolee via GitGitGadget wrote:

> From: Derrick Stolee <dstolee@microsoft.com>
>
> This table is helpful for discovering data in the index to ensure it is
> being written correctly, especially as we build and test the
> sparse-index. This table includes an output format similar to 'git
> ls-tree', but should not be compared to that directly. The biggest
> reasons are that 'git ls-tree' includes a tree entry for every
> subdirectory, even those that would not appear as a sparse directory in
> a sparse-index. Further, 'git ls-tree' does not use a trailing directory
> separator for its tree rows.
>
> This does not print the stat() information for the blobs. That will be
> added in a future change with another option. The tests that are added
> in the next few changes care only about the object types and IDs.
> However, this future need for full index information justifies the need
> for this test helper over extending a user-facing feature, such as 'git
> ls-files'.

Is that stat() information that's going to be essential to grab in the
same process that runs the "for (i = 0; i < istate->cache_nr; i++)"
for-loop, or stat() information that could be grabbed as:

    git ls-files -z --stage | some-program-that-stats-all-listed-blobs

It's not so much that I still disagree as I feel like I'm missing
something. I haven't gone through this topic with a fine toothed comb,
so ...

If and when these patches land and I'm using this nascent sparse
checkout support why wouldn't I want ls-files or another not-a-test-tool
to support extracting this new information that's in the index?

That's why I sent the RFC patches at
https://lore.kernel.org/git/20210317132814.30175-2-avarab@gmail.com/ to
roll this functionality into ls-files.

Still, I think if there's a good reason for why we want this in the
index but never want our plumbing to be able to dump it in some
user-facing way I think just as a matter of reviewing this code it would
be much simpler if it was in ls-files behind some
git_env_bool("GIT_TEST_...") flag or something.

Or maybe I'm the only one who spends a lot of time with both ls-files.c
and test-read-cache.c open while trying to review this trying to keep
track of if and how this helper is and isn't subtly different from
ls-files (as my RFC series shows, not really that different at all...).
Especially with the really-just-ls-files-plus-one-thing tool mimicking
ls-tree output, for reasons I still don't get...

> To make the option parsing slightly more robust, wrap the string
> comparisons in a loop adapted from test-dir-iterator.c.
>
> Care must be taken with the final check for the 'cnt' variable. We
> continue the expectation that the numerical value is the final argument.

I think even if you're set on not having this exposed in some
builtin/*.c command this code would be much clearer based on some
version of my
https://lore.kernel.org/git/20210317132814.30175-6-avarab@gmail.com/
i.e. the part that isn't entirely deleting t/helper/test-read-cache.c,
which would survive as t/helper/test-read-cache-sparse.c or something.

As that patch shows this code is needlessly convoluted because it's
serving 3x wildly different in-tree use-cases. I don't see how the very
small amount of de-duplication we're getting is worth the complexity.

At that point we don't need any care with the cnt variable, because
we're not combining the fsmonitor and perf use-cases of reading the
index in some loop with the ls-files-alike.

> Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
> ---
>  t/helper/test-read-cache.c | 55 +++++++++++++++++++++++++++++++-------
>  1 file changed, 45 insertions(+), 10 deletions(-)
>
> diff --git a/t/helper/test-read-cache.c b/t/helper/test-read-cache.c
> index 244977a29bdf..6cfd8f2de71c 100644
> --- a/t/helper/test-read-cache.c
> +++ b/t/helper/test-read-cache.c
> @@ -1,36 +1,71 @@
>  #include "test-tool.h"
>  #include "cache.h"
>  #include "config.h"
> +#include "blob.h"
> +#include "commit.h"
> +#include "tree.h"
> +
> +static void print_cache_entry(struct cache_entry *ce)
> +{
> +	const char *type;
> +	printf("%06o ", ce->ce_mode & 0177777);
> +
> +	if (S_ISSPARSEDIR(ce->ce_mode))
> +		type = tree_type;
> +	else if (S_ISGITLINK(ce->ce_mode))
> +		type = commit_type;
> +	else
> +		type = blob_type;
> +
> +	printf("%s %s\t%s\n",
> +	       type,
> +	       oid_to_hex(&ce->oid),
> +	       ce->name);
> +}
> +
> +static void print_cache(struct index_state *istate)
> +{
> +	int i;
> +	for (i = 0; i < istate->cache_nr; i++)
> +		print_cache_entry(istate->cache[i]);
> +}
>  
>  int cmd__read_cache(int argc, const char **argv)
>  {
> +	struct repository *r = the_repository;
>  	int i, cnt = 1;
>  	const char *name = NULL;
> +	int table = 0;
>  
> -	if (argc > 1 && skip_prefix(argv[1], "--print-and-refresh=", &name)) {
> -		argc--;
> -		argv++;
> +	for (++argv, --argc; *argv && starts_with(*argv, "--"); ++argv, --argc) {
> +		if (skip_prefix(*argv, "--print-and-refresh=", &name))
> +			continue;
> +		if (!strcmp(*argv, "--table"))
> +			table = 1;
>  	}
>  
> -	if (argc == 2)
> -		cnt = strtol(argv[1], NULL, 0);
> +	if (argc == 1)
> +		cnt = strtol(argv[0], NULL, 0);
>  	setup_git_directory();
>  	git_config(git_default_config, NULL);
> +
>  	for (i = 0; i < cnt; i++) {
> -		read_cache();
> +		repo_read_index(r);
>  		if (name) {
>  			int pos;
>  
> -			refresh_index(&the_index, REFRESH_QUIET,
> +			refresh_index(r->index, REFRESH_QUIET,
>  				      NULL, NULL, NULL);
> -			pos = index_name_pos(&the_index, name, strlen(name));
> +			pos = index_name_pos(r->index, name, strlen(name));
>  			if (pos < 0)
>  				die("%s not in index", name);
>  			printf("%s is%s up to date\n", name,
> -			       ce_uptodate(the_index.cache[pos]) ? "" : " not");
> +			       ce_uptodate(r->index->cache[pos]) ? "" : " not");
>  			write_file(name, "%d\n", i);
>  		}
> -		discard_cache();
> +		if (table)
> +			print_cache(r->index);
> +		discard_index(r->index);
>  	}
>  	return 0;
>  }


  reply	other threads:[~2021-03-24  1:25 UTC|newest]

Thread overview: 203+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-23 20:14 [PATCH 00/20] Sparse Index: Design, Format, Tests Derrick Stolee via GitGitGadget
2021-02-23 20:14 ` [PATCH 01/20] sparse-index: design doc and format update Derrick Stolee via GitGitGadget
2021-02-24  1:13   ` Elijah Newren
2021-02-25 15:29     ` Derrick Stolee
2021-02-25 20:14       ` Elijah Newren
2021-02-23 20:14 ` [PATCH 02/20] t/perf: add performance test for sparse operations Derrick Stolee via GitGitGadget
2021-02-24  2:30   ` Elijah Newren
2021-03-09 20:03     ` Derrick Stolee
2021-02-23 20:14 ` [PATCH 03/20] t1092: clean up script quoting Derrick Stolee via GitGitGadget
2021-02-23 20:14 ` [PATCH 04/20] sparse-index: add guard to ensure full index Derrick Stolee via GitGitGadget
2021-02-24  2:44   ` Elijah Newren
2021-02-23 20:14 ` [PATCH 05/20] sparse-index: implement ensure_full_index() Derrick Stolee via GitGitGadget
2021-02-24  3:20   ` Elijah Newren
2021-02-23 20:14 ` [PATCH 06/20] t1092: compare sparse-checkout to sparse-index Derrick Stolee via GitGitGadget
2021-02-25  6:37   ` Elijah Newren
2021-02-23 20:14 ` [PATCH 07/20] test-read-cache: print cache entries with --table Derrick Stolee via GitGitGadget
2021-02-25  7:02   ` Elijah Newren
2021-03-09 21:00     ` Derrick Stolee
2021-02-23 20:14 ` [PATCH 08/20] test-tool: don't force full index Derrick Stolee via GitGitGadget
2021-02-23 20:14 ` [PATCH 09/20] unpack-trees: ensure " Derrick Stolee via GitGitGadget
2021-02-23 20:14 ` [PATCH 10/20] sparse-checkout: hold pattern list in index Derrick Stolee via GitGitGadget
2021-02-25  7:14   ` Elijah Newren
2021-02-23 20:14 ` [PATCH 11/20] sparse-index: convert from full to sparse Derrick Stolee via GitGitGadget
2021-02-25  7:33   ` Elijah Newren
2021-03-09 21:13     ` Derrick Stolee
2021-02-23 20:14 ` [PATCH 12/20] submodule: sparse-index should not collapse links Derrick Stolee via GitGitGadget
2021-02-23 20:14 ` [PATCH 13/20] unpack-trees: allow sparse directories Derrick Stolee via GitGitGadget
2021-02-25  7:40   ` Elijah Newren
2021-03-09 21:35     ` Derrick Stolee
2021-03-09 21:39       ` Elijah Newren
2021-02-23 20:14 ` [PATCH 14/20] sparse-index: check index conversion happens Derrick Stolee via GitGitGadget
2021-02-23 20:14 ` [PATCH 15/20] sparse-index: create extension for compatibility Derrick Stolee via GitGitGadget
2021-02-25  7:45   ` Elijah Newren
2021-03-09 21:45     ` Derrick Stolee
2021-02-23 20:14 ` [PATCH 16/20] sparse-checkout: toggle sparse index from builtin Derrick Stolee via GitGitGadget
2021-02-24 19:11   ` Martin Ågren
2021-03-09 20:52     ` Derrick Stolee
2021-03-09 21:03       ` Elijah Newren
2021-03-09 21:10         ` Derrick Stolee
2021-03-09 21:38           ` Elijah Newren
2021-03-14 20:08       ` Martin Ågren
2021-03-15 13:36         ` Derrick Stolee
2021-02-23 20:14 ` [PATCH 17/20] sparse-checkout: disable sparse-index Derrick Stolee via GitGitGadget
2021-02-27 12:32   ` SZEDER Gábor
2021-03-09 20:20     ` Derrick Stolee
2021-03-10 18:20       ` Derrick Stolee
2021-02-23 20:14 ` [PATCH 18/20] cache-tree: integrate with sparse directory entries Derrick Stolee via GitGitGadget
2021-02-23 20:14 ` [PATCH 19/20] sparse-index: loose integration with cache_tree_verify() Derrick Stolee via GitGitGadget
2021-02-23 20:14 ` [PATCH 20/20] p2000: add sparse-index repos Derrick Stolee via GitGitGadget
2021-02-23 23:49 ` [PATCH 00/20] Sparse Index: Design, Format, Tests Elijah Newren
2021-02-26 21:28   ` Elijah Newren
2021-03-10 19:30 ` [PATCH v2 " Derrick Stolee via GitGitGadget
2021-03-10 19:30   ` [PATCH v2 01/20] sparse-index: design doc and format update Derrick Stolee via GitGitGadget
2021-03-10 22:19     ` Elijah Newren
2021-03-10 19:30   ` [PATCH v2 02/20] t/perf: add performance test for sparse operations Derrick Stolee via GitGitGadget
2021-03-10 19:30   ` [PATCH v2 03/20] t1092: clean up script quoting Derrick Stolee via GitGitGadget
2021-03-10 19:30   ` [PATCH v2 04/20] sparse-index: add guard to ensure full index Derrick Stolee via GitGitGadget
2021-03-10 19:30   ` [PATCH v2 05/20] sparse-index: implement ensure_full_index() Derrick Stolee via GitGitGadget
2021-03-12  6:50     ` Junio C Hamano
2021-03-12 13:56       ` Derrick Stolee
2021-03-12 20:08         ` Junio C Hamano
2021-03-12 20:11           ` Derrick Stolee
2021-03-15 23:52             ` Ævar Arnfjörð Bjarmason
2021-03-10 19:30   ` [PATCH v2 06/20] t1092: compare sparse-checkout to sparse-index Derrick Stolee via GitGitGadget
2021-03-10 23:04     ` Elijah Newren
2021-03-11 14:17       ` Derrick Stolee
2021-03-10 19:30   ` [PATCH v2 07/20] test-read-cache: print cache entries with --table Derrick Stolee via GitGitGadget
2021-03-10 19:30   ` [PATCH v2 08/20] test-tool: don't force full index Derrick Stolee via GitGitGadget
2021-03-10 19:30   ` [PATCH v2 09/20] unpack-trees: ensure " Derrick Stolee via GitGitGadget
2021-03-10 19:30   ` [PATCH v2 10/20] sparse-checkout: hold pattern list in index Derrick Stolee via GitGitGadget
2021-03-10 19:30   ` [PATCH v2 11/20] sparse-index: convert from full to sparse Derrick Stolee via GitGitGadget
2021-03-10 23:44     ` Elijah Newren
2021-03-11 14:13       ` Derrick Stolee
2021-03-10 19:30   ` [PATCH v2 12/20] submodule: sparse-index should not collapse links Derrick Stolee via GitGitGadget
2021-03-10 19:30   ` [PATCH v2 13/20] unpack-trees: allow sparse directories Derrick Stolee via GitGitGadget
2021-03-10 19:30   ` [PATCH v2 14/20] sparse-index: check index conversion happens Derrick Stolee via GitGitGadget
2021-03-10 19:30   ` [PATCH v2 15/20] sparse-index: create extension for compatibility Derrick Stolee via GitGitGadget
2021-03-10 19:30   ` [PATCH v2 16/20] sparse-checkout: toggle sparse index from builtin Derrick Stolee via GitGitGadget
2021-03-10 19:31   ` [PATCH v2 17/20] sparse-checkout: disable sparse-index Derrick Stolee via GitGitGadget
2021-03-10 19:31   ` [PATCH v2 18/20] cache-tree: integrate with sparse directory entries Derrick Stolee via GitGitGadget
2021-03-10 19:31   ` [PATCH v2 19/20] sparse-index: loose integration with cache_tree_verify() Derrick Stolee via GitGitGadget
2021-03-10 19:31   ` [PATCH v2 20/20] p2000: add sparse-index repos Derrick Stolee via GitGitGadget
2021-03-11  0:07   ` [PATCH v2 00/20] Sparse Index: Design, Format, Tests Elijah Newren
2021-03-16 16:42   ` [PATCH v3 " Derrick Stolee via GitGitGadget
2021-03-16 16:42     ` [PATCH v3 01/20] sparse-index: design doc and format update Derrick Stolee via GitGitGadget
2021-03-19 23:43       ` Junio C Hamano
2021-03-23 11:16         ` Derrick Stolee
2021-03-23 20:10           ` Junio C Hamano
2021-03-23 20:42             ` Derrick Stolee
2021-03-16 16:42     ` [PATCH v3 02/20] t/perf: add performance test for sparse operations Derrick Stolee via GitGitGadget
2021-03-17  8:41       ` Ævar Arnfjörð Bjarmason
2021-03-17 13:05         ` Derrick Stolee
2021-03-17 13:21           ` Ævar Arnfjörð Bjarmason
2021-03-17 18:02             ` Derrick Stolee
2021-03-16 16:42     ` [PATCH v3 03/20] t1092: clean up script quoting Derrick Stolee via GitGitGadget
2021-03-17  8:47       ` Ævar Arnfjörð Bjarmason
2021-03-16 16:42     ` [PATCH v3 04/20] sparse-index: add guard to ensure full index Derrick Stolee via GitGitGadget
2021-03-16 16:42     ` [PATCH v3 05/20] sparse-index: implement ensure_full_index() Derrick Stolee via GitGitGadget
2021-03-17 13:03       ` Ævar Arnfjörð Bjarmason
2021-03-16 16:42     ` [PATCH v3 06/20] t1092: compare sparse-checkout to sparse-index Derrick Stolee via GitGitGadget
2021-03-16 16:42     ` [PATCH v3 07/20] test-read-cache: print cache entries with --table Derrick Stolee via GitGitGadget
2021-03-17 13:28       ` [RFC/PATCH 0/5] " Ævar Arnfjörð Bjarmason
2021-03-17 18:28         ` Elijah Newren
2021-03-17 19:46           ` Derrick Stolee
2021-03-17 20:26             ` Elijah Newren
2021-03-17 20:34               ` Derrick Stolee
2021-03-17 13:28       ` [RFC/PATCH 1/5] ls-files: defer read_index() after parse_options() etc Ævar Arnfjörð Bjarmason
2021-03-17 13:28       ` [RFC/PATCH 2/5] ls-files: make "mode" in show_ce() loop a variable Ævar Arnfjörð Bjarmason
2021-03-17 18:11         ` Elijah Newren
2021-03-24  0:46           ` Ævar Arnfjörð Bjarmason
2021-03-17 13:28       ` [RFC/PATCH 3/5] ls-files: add and use a new --sparse option Ævar Arnfjörð Bjarmason
2021-03-17 18:19         ` Elijah Newren
2021-03-17 18:27           ` Ævar Arnfjörð Bjarmason
2021-03-17 18:44             ` Elijah Newren
2021-03-17 20:43         ` Derrick Stolee
2021-03-24  0:52           ` Ævar Arnfjörð Bjarmason
2021-03-17 13:28       ` [RFC/PATCH 4/5] test-tool read-cache: --table is redundant to ls-files Ævar Arnfjörð Bjarmason
2021-03-17 13:28       ` [RFC/PATCH 5/5] test-tool: split up test-tool read-cache Ævar Arnfjörð Bjarmason
2021-03-17 13:32         ` Ævar Arnfjörð Bjarmason
2021-03-16 16:42     ` [PATCH v3 08/20] test-tool: don't force full index Derrick Stolee via GitGitGadget
2021-03-16 16:42     ` [PATCH v3 09/20] unpack-trees: ensure " Derrick Stolee via GitGitGadget
2021-03-16 16:42     ` [PATCH v3 10/20] sparse-checkout: hold pattern list in index Derrick Stolee via GitGitGadget
2021-03-16 16:42     ` [PATCH v3 11/20] sparse-index: convert from full to sparse Derrick Stolee via GitGitGadget
2021-03-17 13:43       ` Ævar Arnfjörð Bjarmason
2021-03-17 19:55         ` Derrick Stolee
2021-03-18 13:38           ` Derrick Stolee
2021-03-16 16:42     ` [PATCH v3 12/20] submodule: sparse-index should not collapse links Derrick Stolee via GitGitGadget
2021-03-16 16:42     ` [PATCH v3 13/20] unpack-trees: allow sparse directories Derrick Stolee via GitGitGadget
2021-03-17 13:35       ` Ævar Arnfjörð Bjarmason
2021-03-16 16:42     ` [PATCH v3 14/20] sparse-index: check index conversion happens Derrick Stolee via GitGitGadget
2021-03-16 16:42     ` [PATCH v3 15/20] sparse-index: create extension for compatibility Derrick Stolee via GitGitGadget
2021-03-16 16:42     ` [PATCH v3 16/20] sparse-checkout: toggle sparse index from builtin Derrick Stolee via GitGitGadget
2021-03-16 16:43     ` [PATCH v3 17/20] sparse-checkout: disable sparse-index Derrick Stolee via GitGitGadget
2021-03-16 16:43     ` [PATCH v3 18/20] cache-tree: integrate with sparse directory entries Derrick Stolee via GitGitGadget
2021-03-16 16:43     ` [PATCH v3 19/20] sparse-index: loose integration with cache_tree_verify() Derrick Stolee via GitGitGadget
2021-03-16 16:43     ` [PATCH v3 20/20] p2000: add sparse-index repos Derrick Stolee via GitGitGadget
2021-03-16 16:59     ` [PATCH v3 00/20] Sparse Index: Design, Format, Tests Derrick Stolee
2021-03-16 21:18     ` Elijah Newren
2021-03-18 21:50     ` Junio C Hamano
2021-03-19 13:00       ` Derrick Stolee
2021-03-23 13:44     ` [PATCH v4 " Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 01/20] sparse-index: design doc and format update Derrick Stolee via GitGitGadget
2021-03-26 20:29         ` SZEDER Gábor
2021-03-28  1:47           ` Junio C Hamano
2021-03-29 14:32             ` Derrick Stolee
2021-03-23 13:44       ` [PATCH v4 02/20] t/perf: add performance test for sparse operations Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 03/20] t1092: clean up script quoting Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 04/20] sparse-index: add guard to ensure full index Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 05/20] sparse-index: implement ensure_full_index() Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 06/20] t1092: compare sparse-checkout to sparse-index Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 07/20] test-read-cache: print cache entries with --table Derrick Stolee via GitGitGadget
2021-03-24  1:24         ` Ævar Arnfjörð Bjarmason [this message]
2021-03-24 12:33           ` Derrick Stolee
2021-03-25  3:41             ` Ævar Arnfjörð Bjarmason
2021-03-26  0:12               ` Elijah Newren
2021-03-28 15:31                 ` Ævar Arnfjörð Bjarmason
2021-03-29 19:46                   ` Derrick Stolee
2021-03-29 21:44                     ` Junio C Hamano
2021-03-30 11:28                       ` Derrick Stolee
2021-03-29 23:06                     ` Ævar Arnfjörð Bjarmason
2021-03-30 11:41                       ` Derrick Stolee
2021-03-29 22:02                   ` Elijah Newren
2021-03-23 13:44       ` [PATCH v4 08/20] test-tool: don't force full index Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 09/20] unpack-trees: ensure " Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 10/20] sparse-checkout: hold pattern list in index Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 11/20] sparse-index: convert from full to sparse Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 12/20] submodule: sparse-index should not collapse links Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 13/20] unpack-trees: allow sparse directories Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 14/20] sparse-index: check index conversion happens Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 15/20] sparse-index: create extension for compatibility Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 16/20] sparse-checkout: toggle sparse index from builtin Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 17/20] sparse-checkout: disable sparse-index Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 18/20] cache-tree: integrate with sparse directory entries Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 19/20] sparse-index: loose integration with cache_tree_verify() Derrick Stolee via GitGitGadget
2021-03-23 13:44       ` [PATCH v4 20/20] p2000: add sparse-index repos Derrick Stolee via GitGitGadget
2021-03-23 16:16       ` [PATCH v4 00/20] Sparse Index: Design, Format, Tests Elijah Newren
2021-03-30 13:10       ` [PATCH v5 00/21] " Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 01/21] sparse-index: design doc and format update Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 02/21] t/perf: add performance test for sparse operations Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 03/21] t1092: clean up script quoting Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 04/21] sparse-index: add guard to ensure full index Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 05/21] sparse-index: implement ensure_full_index() Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 06/21] t1092: compare sparse-checkout to sparse-index Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 07/21] test-read-cache: print cache entries with --table Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 08/21] test-tool: don't force full index Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 09/21] unpack-trees: ensure " Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 10/21] sparse-checkout: hold pattern list in index Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 11/21] sparse-index: add 'sdir' index extension Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 12/21] sparse-index: convert from full to sparse Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 13/21] submodule: sparse-index should not collapse links Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 14/21] unpack-trees: allow sparse directories Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 15/21] sparse-index: check index conversion happens Derrick Stolee via GitGitGadget
2021-03-30 13:10         ` [PATCH v5 16/21] sparse-index: add index.sparse config option Derrick Stolee via GitGitGadget
2021-03-30 13:11         ` [PATCH v5 17/21] sparse-checkout: toggle sparse index from builtin Derrick Stolee via GitGitGadget
2021-03-30 13:11         ` [PATCH v5 18/21] sparse-checkout: disable sparse-index Derrick Stolee via GitGitGadget
2021-03-30 13:11         ` [PATCH v5 19/21] cache-tree: integrate with sparse directory entries Derrick Stolee via GitGitGadget
2021-03-30 13:11         ` [PATCH v5 20/21] sparse-index: loose integration with cache_tree_verify() Derrick Stolee via GitGitGadget
2021-03-30 13:11         ` [PATCH v5 21/21] p2000: add sparse-index repos Derrick Stolee via GitGitGadget
2021-03-30 20:11         ` [PATCH v5 00/21] Sparse Index: Design, Format, Tests Junio C Hamano
2021-03-30 21:31           ` Derrick Stolee
2021-03-30 21:49             ` Junio C Hamano
2021-04-01  5:59             ` Elijah Newren
2021-04-01  4:38         ` Elijah Newren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87r1k5pcmx.fsf@evledraar.gmail.com \
    --to=avarab@gmail.com \
    --cc=derrickstolee@github.com \
    --cc=dstolee@microsoft.com \
    --cc=git@vger.kernel.org \
    --cc=gitgitgadget@gmail.com \
    --cc=gitster@pobox.com \
    --cc=jrnieder@gmail.com \
    --cc=martin.agren@gmail.com \
    --cc=newren@gmail.com \
    --cc=pclouds@gmail.com \
    --cc=stolee@gmail.com \
    --cc=szeder.dev@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.