diff options
| author | Taylor Blau <me@ttaylorr.com> | 2022-05-20 19:18:03 -0400 |
|---|---|---|
| committer | Junio C Hamano <gitster@pobox.com> | 2022-05-26 15:48:26 -0700 |
| commit | f9825d1cf752b8d04a3e9193ff6fdb54d09e28a3 (patch) | |
| tree | f5f0109b02f912c876eec00f99ceb44625dcee44 /Documentation | |
| parent | a7d493833fe615211fd329183e59cec08496fb90 (diff) | |
| download | git-f9825d1cf752b8d04a3e9193ff6fdb54d09e28a3.tar.xz | |
builtin/repack.c: support generating a cruft pack
Expose a way to split the contents of a repository into a main and cruft
pack when doing an all-into-one repack with `git repack --cruft -d`, and
a complementary configuration variable.
Signed-off-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Documentation')
| -rw-r--r-- | Documentation/git-repack.txt | 11 | ||||
| -rw-r--r-- | Documentation/technical/cruft-packs.txt | 2 |
2 files changed, 12 insertions, 1 deletions
diff --git a/Documentation/git-repack.txt b/Documentation/git-repack.txt index ee30edc178..0bf13893d8 100644 --- a/Documentation/git-repack.txt +++ b/Documentation/git-repack.txt @@ -63,6 +63,17 @@ to the new separate pack will be written. Also run 'git prune-packed' to remove redundant loose object files. +--cruft:: + Same as `-a`, unless `-d` is used. Then any unreachable objects + are packed into a separate cruft pack. Unreachable objects can + be pruned using the normal expiry rules with the next `git gc` + invocation (see linkgit:git-gc[1]). Incompatible with `-k`. + +--cruft-expiration=<approxidate>:: + Expire unreachable objects older than `<approxidate>` + immediately instead of waiting for the next `git gc` invocation. + Only useful with `--cruft -d`. + -l:: Pass the `--local` option to 'git pack-objects'. See linkgit:git-pack-objects[1]. diff --git a/Documentation/technical/cruft-packs.txt b/Documentation/technical/cruft-packs.txt index c0f583cd48..d81f3a8982 100644 --- a/Documentation/technical/cruft-packs.txt +++ b/Documentation/technical/cruft-packs.txt @@ -17,7 +17,7 @@ pruned according to normal expiry rules with the next 'git gc' invocation. Unreachable objects aren't removed immediately, since doing so could race with an incoming push which may reference an object which is about to be deleted. -Instead, those unreachable objects are stored as loose object and stay that way +Instead, those unreachable objects are stored as loose objects and stay that way until they are older than the expiration window, at which point they are removed by linkgit:git-prune[1]. |
