Re: [PATCH v3 2/3] multi-pack-index: respect repack.packKeptObjects=false
- From
Đoàn Trần Công Danh <congdanhqx@gmail.com>
- Date
- May 9, 2020, 16:11 UTC
- Message-ID
- <20200509161159.GA15146@danh.dev>
- In-Reply-To
- <988697dd5121430cd3ddfa60b1ebcf26027566ef.1589034270.git.gitgitgadget@gmail.com>
On 2020-05-09 14:24:29+0000, Derrick Stolee via GitGitGadget <gitgitgadget@gmail.com> wrote:
Show 7 quoted lines
> From: Derrick Stolee <dstolee@microsoft.com> > > +test_expect_success 'repack respects repack.packKeptObjects=false' ' > + test_when_finished rm -f dup/.git/objects/pack/*keep && > + ( > + cd dup && > + ls .git/objects/pack/*idx >idx-list &&
I think ls(1) is an overkill. I think:
echo .git/objects/pack/*idx
is more efficient.
> + test_line_count = 5 idx-list && > + ls .git/objects/pack/*.pack | sed "s/\.pack/.keep/" >keep-list &&
Likewise.
> + for keep in $(cat keep-list) > + do > + touch $keep || return 1
Is this intended? Since touch(1) accepts multiple files as argument.
Show 7 quoted lines
> + done && > + git multi-pack-index repack --batch-size=0 && > + ls .git/objects/pack/*idx >idx-list && > + test_line_count = 5 idx-list && > + test-tool read-midx .git/objects | grep idx >midx-list && > + test_line_count = 5 midx-list && > + THIRD_SMALLEST_SIZE=$(test-tool path-utils file-size .git/objects/pack/*pack | sort -n | head -n 3 | tail -n 1) &&
This line is overly long. Should we write test-tool's output to temp file and process it?
And I think either
sed -n '3{p;q}'or:
sed -n 3p
is cleaner than
head -n 3 | tail -n 1
> + BATCH_SIZE=$(($THIRD_SMALLEST_SIZE + 1)) &&
I think we're better to make this correct in this patch instead of spend a dollar here, than take it back in the next patch.
> + git multi-pack-index repack --batch-size=$BATCH_SIZE && > + ls .git/objects/pack/*idx >idx-list &&
-- Danh