Skip to content

Commit 93efe34

Browse files
inosmeetgitster
authored andcommitted
doc: pack-refs: factor out common options
In preparation for adding documentation for `git refs optimize`, factor out the common options from the `git-pack-refs` man page into a shareable file `pack-refs-options.adoc` and update `git-pack-refs.adoc` to use an `include::` macro. This change is a pure refactoring and results in no change to the final rendered documentation for `pack-refs`. Mentored-by: Patrick Steinhardt <[email protected]> Mentored-by: shejialuo <[email protected]> Signed-off-by: Meet Soni <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 0d4ec33 commit 93efe34

File tree

2 files changed

+53
-52
lines changed

2 files changed

+53
-52
lines changed

Documentation/git-pack-refs.adoc

Lines changed: 1 addition & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -45,58 +45,7 @@ unpacked.
4545
OPTIONS
4646
-------
4747

48-
--all::
49-
50-
The command by default packs all tags and refs that are already
51-
packed, and leaves other refs
52-
alone. This is because branches are expected to be actively
53-
developed and packing their tips does not help performance.
54-
This option causes all refs to be packed as well, with the exception
55-
of hidden refs, broken refs, and symbolic refs. Useful for a repository
56-
with many branches of historical interests.
57-
58-
--no-prune::
59-
60-
The command usually removes loose refs under `$GIT_DIR/refs`
61-
hierarchy after packing them. This option tells it not to.
62-
63-
--auto::
64-
65-
Pack refs as needed depending on the current state of the ref database. The
66-
behavior depends on the ref format used by the repository and may change in the
67-
future.
68-
+
69-
- "files": Loose references are packed into the `packed-refs` file
70-
based on the ratio of loose references to the size of the
71-
`packed-refs` file. The bigger the `packed-refs` file, the more loose
72-
references need to exist before we repack.
73-
+
74-
- "reftable": Tables are compacted such that they form a geometric
75-
sequence. For two tables N and N+1, where N+1 is newer, this
76-
maintains the property that N is at least twice as big as N+1. Only
77-
tables that violate this property are compacted.
78-
79-
--include <pattern>::
80-
81-
Pack refs based on a `glob(7)` pattern. Repetitions of this option
82-
accumulate inclusion patterns. If a ref is both included in `--include` and
83-
`--exclude`, `--exclude` takes precedence. Using `--include` will preclude all
84-
tags from being included by default. Symbolic refs and broken refs will never
85-
be packed. When used with `--all`, it will be a noop. Use `--no-include` to clear
86-
and reset the list of patterns.
87-
88-
--exclude <pattern>::
89-
90-
Do not pack refs matching the given `glob(7)` pattern. Repetitions of this option
91-
accumulate exclusion patterns. Use `--no-exclude` to clear and reset the list of
92-
patterns. If a ref is already packed, including it with `--exclude` will not
93-
unpack it.
94-
+
95-
When used with `--all`, pack only loose refs which do not match any of
96-
the provided `--exclude` patterns.
97-
+
98-
When used with `--include`, refs provided to `--include`, minus refs that are
99-
provided to `--exclude` will be packed.
48+
include::pack-refs-options.adoc[]
10049

10150

10251
BUGS
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
--all::
2+
3+
The command by default packs all tags and refs that are already
4+
packed, and leaves other refs
5+
alone. This is because branches are expected to be actively
6+
developed and packing their tips does not help performance.
7+
This option causes all refs to be packed as well, with the exception
8+
of hidden refs, broken refs, and symbolic refs. Useful for a repository
9+
with many branches of historical interests.
10+
11+
--no-prune::
12+
13+
The command usually removes loose refs under `$GIT_DIR/refs`
14+
hierarchy after packing them. This option tells it not to.
15+
16+
--auto::
17+
18+
Pack refs as needed depending on the current state of the ref database. The
19+
behavior depends on the ref format used by the repository and may change in the
20+
future.
21+
+
22+
- "files": Loose references are packed into the `packed-refs` file
23+
based on the ratio of loose references to the size of the
24+
`packed-refs` file. The bigger the `packed-refs` file, the more loose
25+
references need to exist before we repack.
26+
+
27+
- "reftable": Tables are compacted such that they form a geometric
28+
sequence. For two tables N and N+1, where N+1 is newer, this
29+
maintains the property that N is at least twice as big as N+1. Only
30+
tables that violate this property are compacted.
31+
32+
--include <pattern>::
33+
34+
Pack refs based on a `glob(7)` pattern. Repetitions of this option
35+
accumulate inclusion patterns. If a ref is both included in `--include` and
36+
`--exclude`, `--exclude` takes precedence. Using `--include` will preclude all
37+
tags from being included by default. Symbolic refs and broken refs will never
38+
be packed. When used with `--all`, it will be a noop. Use `--no-include` to clear
39+
and reset the list of patterns.
40+
41+
--exclude <pattern>::
42+
43+
Do not pack refs matching the given `glob(7)` pattern. Repetitions of this option
44+
accumulate exclusion patterns. Use `--no-exclude` to clear and reset the list of
45+
patterns. If a ref is already packed, including it with `--exclude` will not
46+
unpack it.
47+
+
48+
When used with `--all`, pack only loose refs which do not match any of
49+
the provided `--exclude` patterns.
50+
+
51+
When used with `--include`, refs provided to `--include`, minus refs that are
52+
provided to `--exclude` will be packed.

0 commit comments

Comments
 (0)