doc: keep first level section header in upper case
When formatted as a man page, 1st section header is always in upper
case even if we write it otherwise. Make all 1st section headers
uppercase to keep it close to the final output.
This does affect html since case is kept there, but I still think it's
a good idea to maintain a consistent style for 1st section headers.
Some sections perhaps should become second sections instead, where
case is kept, and for better organization. I will update if anyone has
suggestions about this.
While at there I also make some header more consistent (e.g. examples
vs example) and fix a couple minor things here and there.
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Nguyễn Thái Ngọc Duy7 years agocommitted byJunio C Hamano
@ -193,7 +193,7 @@ for "git add --no-all <pathspec>...", i.e. ignored removed files.
@@ -193,7 +193,7 @@ for "git add --no-all <pathspec>...", i.e. ignored removed files.
for command-line options).
Configuration
CONFIGURATION
-------------
The optional configuration variable `core.excludesFile` indicates a path to a
@ -226,7 +226,7 @@ Because this example lets the shell expand the asterisk (i.e. you are
@@ -226,7 +226,7 @@ Because this example lets the shell expand the asterisk (i.e. you are
listing the files explicitly), it does not consider
`subdir/git-foo.sh`.
Interactive mode
INTERACTIVE MODE
----------------
When the command enters the interactive mode, it shows the
output of the 'status' subcommand, and then goes into its
@ -240,7 +240,7 @@ When `git apply` is used as a "better GNU patch", the user can pass
@@ -240,7 +240,7 @@ When `git apply` is used as a "better GNU patch", the user can pass
the `--unsafe-paths` option to override this safety check. This option
has no effect when `--index` or `--cached` is in use.
@ -92,8 +92,8 @@ It is okay to err on the side of caution, causing the bundle file
@@ -92,8 +92,8 @@ It is okay to err on the side of caution, causing the bundle file
to contain objects already in the destination, as these are ignored
when unpacking at the destination.
EXAMPLE
-------
EXAMPLES
--------
Assume you want to transfer the history from a repository R1 on machine A
@ -207,7 +207,7 @@ allowing access over SSH.
@@ -207,7 +207,7 @@ allowing access over SSH.
------
[[dbbackend]]
Database Backend
DATABASE BACKEND
----------------
'git-cvsserver' uses one database per Git head (i.e. CVS module) to
@ -321,7 +321,7 @@ git-cvsserver, as described above.
@@ -321,7 +321,7 @@ git-cvsserver, as described above.
When these environment variables are set, the corresponding
command-line arguments may not be used.
Eclipse CVS Client Notes
ECLIPSE CVS CLIENT NOTES
------------------------
To get a checkout with the Eclipse CVS client:
@ -346,7 +346,7 @@ offer. In that case CVS_SERVER is ignored, and you will have to replace
@@ -346,7 +346,7 @@ offer. In that case CVS_SERVER is ignored, and you will have to replace
the cvs utility on the server with 'git-cvsserver' or manipulate your `.bashrc`
so that calling 'cvs' effectively calls 'git-cvsserver'.
Clients known to work
CLIENTS KNOWN TO WORK
---------------------
- CVS 1.12.9 on Debian
@ -354,7 +354,7 @@ Clients known to work
@@ -354,7 +354,7 @@ Clients known to work
- Eclipse 3.0, 3.1.2 on MacOSX (see Eclipse CVS Client Notes)
- TortoiseCVS
Operations supported
OPERATIONS SUPPORTED
--------------------
All the operations required for normal use are supported, including
@ -424,7 +424,7 @@ For best consistency with 'cvs', it is probably best to override the
@@ -424,7 +424,7 @@ For best consistency with 'cvs', it is probably best to override the
You can choose whether you want to trust the index file entirely
(using the `--cached` flag) or ask the diff logic to show any files
that don't match the stat state as being "tentatively changed". Both
of these operations are very useful indeed.
Cached Mode
CACHED MODE
-----------
If `--cached` is specified, it allows you to ask:
@ -77,7 +77,7 @@ So doing a `git diff-index --cached` is basically very useful when you are
@@ -77,7 +77,7 @@ So doing a `git diff-index --cached` is basically very useful when you are
asking yourself "what have I already marked for being committed, and
what's the difference to a previous tree".
Non-cached Mode
NON-CACHED MODE
---------------
The "non-cached" mode takes a different approach, and is potentially
the more useful of the two in that what it does can't be emulated with
@ -202,7 +202,7 @@ smaller output, and it is usually easy to quickly confirm that there is
@@ -202,7 +202,7 @@ smaller output, and it is usually easy to quickly confirm that there is
no private data in the stream.
Limitations
LIMITATIONS
-----------
Since 'git fast-import' cannot tag trees, you will not be
@ -139,7 +139,7 @@ Performance and Compression Tuning
@@ -139,7 +139,7 @@ Performance and Compression Tuning
fastimport.unpackLimit::
See linkgit:git-config[1]
Performance
PERFORMANCE
-----------
The design of fast-import allows it to import large projects in a minimum
amount of memory usage and processing time. Assuming the frontend
@ -155,7 +155,7 @@ faster if the source data is stored on a different drive than the
@@ -155,7 +155,7 @@ faster if the source data is stored on a different drive than the
destination Git repository (due to less IO contention).
Development Cost
DEVELOPMENT COST
----------------
A typical frontend for fast-import tends to weigh in at approximately 200
lines of Perl/Python/Ruby code. Most developers have been able to
@ -165,7 +165,7 @@ an ideal situation, given that most conversion tools are throw-away
@@ -165,7 +165,7 @@ an ideal situation, given that most conversion tools are throw-away
(use once, and never look back).
Parallel Operation
PARALLEL OPERATION
------------------
Like 'git push' or 'git fetch', imports handled by fast-import are safe to
run alongside parallel `git repack -a -d` or `git gc` invocations,
@ -186,7 +186,7 @@ this only be used on an otherwise quiet repository. Using --force
@@ -186,7 +186,7 @@ this only be used on an otherwise quiet repository. Using --force
is not necessary for an initial import into an empty repository.
Technical Discussion
TECHNICAL DISCUSSION
--------------------
fast-import tracks a set of branches in memory. Any branch can be created
or modified at any point during the import process by sending a
@ -204,7 +204,7 @@ directory also allows fast-import to run very quickly, as it does not
@@ -204,7 +204,7 @@ directory also allows fast-import to run very quickly, as it does not
need to perform any costly file update operations when switching
between branches.
Input Format
INPUT FORMAT
------------
With the exception of raw file data (which Git does not interpret)
the fast-import input format is text (ASCII) based. This text based
@ -1131,7 +1131,7 @@ If the `--done` command-line option or `feature done` command is
@@ -1131,7 +1131,7 @@ If the `--done` command-line option or `feature done` command is
in use, the `done` command is mandatory and marks the end of the
stream.
Responses To Commands
RESPONSES TO COMMANDS
---------------------
New objects written by fast-import are not available immediately.
Most fast-import commands have no visible effect until the next
@ -1160,7 +1160,7 @@ To avoid deadlock, such frontends must completely consume any
@@ -1160,7 +1160,7 @@ To avoid deadlock, such frontends must completely consume any
pending output from `progress`, `ls`, `get-mark`, and `cat-blob` before
performing writes to fast-import that might block.
Crash Reports
CRASH REPORTS
-------------
If fast-import is supplied invalid input it will terminate with a
non-zero exit status and create a crash report in the top level of
@ -1247,7 +1247,7 @@ An example crash:
@@ -1247,7 +1247,7 @@ An example crash:
END OF CRASH REPORT
====
Tips and Tricks
TIPS AND TRICKS
---------------
The following tips and tricks have been collected from various
users of fast-import, and are offered here as suggestions.
@ -1349,7 +1349,7 @@ Your users will feel better knowing how much of the data stream
@@ -1349,7 +1349,7 @@ Your users will feel better knowing how much of the data stream
has been processed.
Packfile Optimization
PACKFILE OPTIMIZATION
---------------------
When packing a blob fast-import always attempts to deltify against the last
blob written. Unless specifically arranged for by the frontend,
@ -1380,7 +1380,7 @@ to force recomputation of all deltas can significantly reduce the
@@ -1380,7 +1380,7 @@ to force recomputation of all deltas can significantly reduce the
final packfile size (30-50% smaller can be quite typical).
Memory Utilization
MEMORY UTILIZATION
------------------
There are a number of factors which affect how much memory fast-import
requires to perform an import. Like critical sections of core
@ -1458,7 +1458,7 @@ and lazy loading of subtrees, allows fast-import to efficiently import
@@ -1458,7 +1458,7 @@ and lazy loading of subtrees, allows fast-import to efficiently import
projects with 2,000+ branches and 45,114+ files in a very limited
memory footprint (less than 2.7 MiB per active branch).
Signals
SIGNALS
-------
Sending *SIGUSR1* to the 'git fast-import' process ends the current
packfile early, simulating a `checkpoint` command. The impatient
@ -230,7 +230,7 @@ rewrite, the exit status is `2`. On any other error, the exit status may be
@@ -230,7 +230,7 @@ rewrite, the exit status is `2`. On any other error, the exit status may be
any other non-zero value.
Examples
EXAMPLES
--------
Suppose you want to remove a file (containing confidential information
@ -84,7 +84,7 @@ be performed as well.
@@ -84,7 +84,7 @@ be performed as well.
Force `git gc` to run even if there may be another `git gc`
instance running on this repository.
Configuration
CONFIGURATION
-------------
The optional configuration variable `gc.reflogExpire` can be
@ -144,7 +144,7 @@ old a stale working tree should be before `git worktree prune` deletes
@@ -144,7 +144,7 @@ old a stale working tree should be before `git worktree prune` deletes
it. Default is "3 months ago".
Notes
NOTES
-----
'git gc' tries very hard not to delete objects that are referenced
@ -183,7 +183,7 @@ followed by the ("attr/<eolattr>").
@@ -183,7 +183,7 @@ followed by the ("attr/<eolattr>").
Files to show. If no files are given all files which match the other
specified criteria are shown.
Output
OUTPUT
------
'git ls-files' just outputs the filenames unless `--stage` is specified in
which case it outputs:
@ -208,7 +208,7 @@ quoted as explained for the configuration variable `core.quotePath`
@@ -208,7 +208,7 @@ quoted as explained for the configuration variable `core.quotePath`
verbatim and the line is terminated by a NUL byte.
Exclude Patterns
EXCLUDE PATTERNS
----------------
'git ls-files' can use a list of "exclude patterns" when
@ -29,8 +29,8 @@ Submit Git changes back to p4 using 'git p4 submit'. The command
@@ -29,8 +29,8 @@ Submit Git changes back to p4 using 'git p4 submit'. The command
refs, no explanation is needed. For a failed ref, the reason for
failure is described.
Note about fast-forwards
NOTE ABOUT FAST-FORWARDS
------------------------
When an update changes a branch (or more in general, a ref) that used to
@ -510,7 +510,7 @@ overwrite it. In other words, "git push --force" is a method reserved for
@@ -510,7 +510,7 @@ overwrite it. In other words, "git push --force" is a method reserved for
If `-m` is specified, 'git read-tree' can perform 3 kinds of
merge, a single tree merge if only 1 tree is given, a
@ -382,7 +382,7 @@ middle of doing, and when your working tree is ready (i.e. you
@@ -382,7 +382,7 @@ middle of doing, and when your working tree is ready (i.e. you
have finished your work-in-progress), attempt the merge again.
Sparse checkout
SPARSE CHECKOUT
---------------
"Sparse checkout" allows populating the working directory sparsely.
Before any ref is updated, if $GIT_DIR/hooks/pre-receive file exists
and is executable, it will be invoked once with no parameters. The
@ -116,7 +116,7 @@ bail out if the update is not to be supported.
@@ -116,7 +116,7 @@ bail out if the update is not to be supported.
See the notes on the quarantine environment below.
update Hook
UPDATE HOOK
-----------
Before each ref is updated, if $GIT_DIR/hooks/update file exists
and is executable, it is invoked once per ref, with three parameters:
@ -138,7 +138,7 @@ ensure the ref will actually be updated, it is only a prerequisite.
@@ -138,7 +138,7 @@ ensure the ref will actually be updated, it is only a prerequisite.
As such it is not a good idea to send notices (e.g. email) from
this hook. Consider using the post-receive hook instead.
post-receive Hook
POST-RECEIVE HOOK
-----------------
After all refs were updated (or attempted to be updated), if any
ref update was successful, and if $GIT_DIR/hooks/post-receive
@ -198,7 +198,7 @@ after it was updated by 'git-receive-pack', but before the hook was able
@@ -198,7 +198,7 @@ after it was updated by 'git-receive-pack', but before the hook was able
to evaluate it. It is recommended that hooks rely on sha1-new
rather than the current value of refname.
post-update Hook
POST-UPDATE HOOK
----------------
After all other processing, if at least one ref was updated, and
if $GIT_DIR/hooks/post-update file exists and is executable, then
@ -216,7 +216,7 @@ if the repository is packed and is served via a dumb transport.
@@ -216,7 +216,7 @@ if the repository is packed and is served via a dumb transport.
exec git update-server-info
Quarantine Environment
QUARANTINE ENVIRONMENT
----------------------
When `receive-pack` takes in objects, they are placed into a temporary
@ -203,7 +203,7 @@ The remote configuration is achieved using the `remote.origin.url` and
@@ -203,7 +203,7 @@ The remote configuration is achieved using the `remote.origin.url` and
`remote.origin.fetch` configuration variables. (See
linkgit:git-config[1]).
Examples
EXAMPLES
--------
* Add a new remote, fetch, and check out a branch from it
@ -46,8 +46,8 @@ ref that is different from the ref you have locally, you can use the
@@ -46,8 +46,8 @@ ref that is different from the ref you have locally, you can use the
its remote name.
EXAMPLE
-------
EXAMPLES
--------
Imagine that you built your work on your `master` branch on top of
the `v1.0` release, and want it to be integrated to the project.
@ -99,7 +99,7 @@ be in a separate packet, and the list must end with a flush packet.
@@ -99,7 +99,7 @@ be in a separate packet, and the list must end with a flush packet.
The remote refs to update.
Specifying the Refs
SPECIFYING THE REFS
-------------------
There are three ways to specify which refs to update on the
@ -173,8 +173,8 @@ The "fixes" branch adds one commit "Introduce "reset type" flag to
@@ -173,8 +173,8 @@ The "fixes" branch adds one commit "Introduce "reset type" flag to
The current branch is "master".
EXAMPLE
-------
EXAMPLES
--------
If you keep your primary branches immediately under
`refs/heads`, and topic branches in subdirectories of
@ -228,7 +228,7 @@ will remove the intended effect of the option.
@@ -228,7 +228,7 @@ will remove the intended effect of the option.
cleaner names.
The same applies to directories ending '/' and paths with '//'
Using --refresh
USING --REFRESH
---------------
`--refresh` does not calculate a new sha1 file or bring the index
up to date for mode/content changes. But what it *does* do is to
@ -239,7 +239,7 @@ the stat entry is out of date.
@@ -239,7 +239,7 @@ the stat entry is out of date.
For example, you'd want to do this after doing a 'git read-tree', to link
up the stat index details with the proper files.
Using --cacheinfo or --info-only
USING --CACHEINFO OR --INFO-ONLY
--------------------------------
`--cacheinfo` is used to register a file that is not in the
current working directory. This is useful for minimum-checkout
@ -261,7 +261,7 @@ useful when the file is available, but you do not wish to update the
@@ -261,7 +261,7 @@ useful when the file is available, but you do not wish to update the
object database.
Using --index-info
USING --INDEX-INFO
------------------
`--index-info` is a more powerful mechanism that lets you feed
Many operations in Git depend on your filesystem to have an
@ -350,7 +350,7 @@ the index (use `git update-index --really-refresh` if you want
@@ -350,7 +350,7 @@ the index (use `git update-index --really-refresh` if you want
to mark them as "assume unchanged").
Examples
EXAMPLES
--------
To update and refresh only the files already checked out:
@ -387,7 +387,7 @@ M foo.c
@@ -387,7 +387,7 @@ M foo.c
<9> now it checks with lstat(2) and finds it has been changed.
Skip-worktree bit
SKIP-WORKTREE BIT
-----------------
Skip-worktree bit can be defined in one (long) sentence: When reading
@ -407,7 +407,7 @@ Although this bit looks similar to assume-unchanged bit, its goal is
@@ -407,7 +407,7 @@ Although this bit looks similar to assume-unchanged bit, its goal is
different from assume-unchanged bit's. Skip-worktree also takes
precedence over assume-unchanged bit when both are set.
Split index
SPLIT INDEX
-----------
This mode is designed for repositories with very large indexes, and
@ -432,7 +432,7 @@ To avoid deleting a shared index file that is still used, its
@@ -432,7 +432,7 @@ To avoid deleting a shared index file that is still used, its
modification time is updated to the current time everytime a new split
index based on the shared index file is either created or read from.
Untracked cache
UNTRACKED CACHE
---------------
This cache is meant to speed up commands that involve determining
@ -490,7 +490,7 @@ As with the bug described above the solution is to one-off do a "git
@@ -490,7 +490,7 @@ As with the bug described above the solution is to one-off do a "git
status" run with `core.untrackedCache=false` to flush out the leftover
bad data.
File System Monitor
FILE SYSTEM MONITOR
-------------------
This feature is intended to speed up git operations for repos that have
@ -518,7 +518,7 @@ file system monitor is added to or removed from the index the next time
@@ -518,7 +518,7 @@ file system monitor is added to or removed from the index the next time
a command reads the index. When `--[no-]fsmonitor` are used, the file
system monitor is immediately added to or removed from the index.
Configuration
CONFIGURATION
-------------
The command honors `core.filemode` configuration variable. If
@ -120,7 +120,7 @@ modifications are performed. Note that while each individual
@@ -120,7 +120,7 @@ modifications are performed. Note that while each individual
<ref> is updated or deleted atomically, a concurrent reader may
still see a subset of the modifications.
Logging Updates
LOGGING UPDATES
---------------
If config parameter "core.logAllRefUpdates" is true and the ref is one under
"refs/heads/", "refs/remotes/", "refs/notes/", or the symbolic ref HEAD; or
@ -84,7 +84,7 @@ variable exists then 'git web{litdd}browse' will treat the specified tool
@@ -84,7 +84,7 @@ variable exists then 'git web{litdd}browse' will treat the specified tool
as a custom command and will use a shell eval to run the command with
the URLs passed as arguments.
Note about konqueror
NOTE ABOUT KONQUEROR
--------------------
When 'konqueror' is specified by a command-line option or a