From: Junio C Hamano Date: Thu, 09 Sep 2021 19:38:52 GMT Subject: Re: [PATCH 5/9] builtin/repack.c: move `.idx` files into place last Message-ID: In-Reply-To: <3b10a97ec0e7c9e672904e6415909a1b8cea872e.1631157880.git.me@ttaylorr.com> Taylor Blau writes: > In a similar spirit as the previous patch, fix the identical problem > from `git repack` (which invokes `pack-objects` with a temporary > location for output, and then moves the files into their final locations > itself). OK. This array is used in cmd_repack() to call rename() in the order in which its elements appear, so moving the entry to the last means it will be renamed the last. > Signed-off-by: Taylor Blau > Signed-off-by: Ævar Arnfjörð Bjarmason > Signed-off-by: Taylor Blau > --- > builtin/repack.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/builtin/repack.c b/builtin/repack.c > index 5f9bc74adc..c3e4771609 100644 > --- a/builtin/repack.c > +++ b/builtin/repack.c > @@ -208,10 +208,10 @@ static struct { > unsigned optional:1; > } exts[] = { > {".pack"}, > - {".idx"}, > {".rev", 1}, > {".bitmap", 1}, > {".promisor", 1}, > + {".idx"}, > }; And the .idx entry MUST stay the last. I wonder if dropping the trailing comma and replace it with a "/* must be at the end */" comment would be an effective way to ensure that.