summaryrefslogtreecommitdiff
path: root/Documentation/git-repack.txt
diff options
context:
space:
mode:
authorLibravatar Jonathan Tan <jonathantanmy@google.com>2018-08-08 15:34:06 -0700
committerLibravatar Junio C Hamano <gitster@pobox.com>2018-08-09 09:17:39 -0700
commit5d19e8138d5f24dbbe8d3736b4e57e117fc099b3 (patch)
tree7fea50a8902ff71afcb52c58f9ff4a19db1343b2 /Documentation/git-repack.txt
parentrepack: refactor setup of pack-objects cmd (diff)
downloadtgif-5d19e8138d5f24dbbe8d3736b4e57e117fc099b3.tar.xz
repack: repack promisor objects if -a or -A is set
Currently, repack does not touch promisor packfiles at all, potentially causing the performance of repositories that have many such packfiles to drop. Therefore, repack all promisor objects if invoked with -a or -A. This is done by an additional invocation of pack-objects on all promisor objects individually given, which takes care of deduplication and allows the resulting packfiles to respect flags such as --max-pack-size. Signed-off-by: Jonathan Tan <jonathantanmy@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Documentation/git-repack.txt')
-rw-r--r--Documentation/git-repack.txt5
1 files changed, 5 insertions, 0 deletions
diff --git a/Documentation/git-repack.txt b/Documentation/git-repack.txt
index d90e7907f4..d056250968 100644
--- a/Documentation/git-repack.txt
+++ b/Documentation/git-repack.txt
@@ -40,6 +40,11 @@ OPTIONS
Note that users fetching over dumb protocols will have to fetch the
whole new pack in order to get any contained object, no matter how many
other objects in that pack they already have locally.
++
+Promisor packfiles are repacked separately: if there are packfiles that
+have an associated ".promisor" file, these packfiles will be repacked
+into another separate pack, and an empty ".promisor" file corresponding
+to the new separate pack will be written.
-A::
Same as `-a`, unless `-d` is used. Then any unreachable