manpages: italicize git command names (which were in teletype font)

The names of git commands are not meant to be entered at the
commandline; they are just names. So we render them in italics,
as is usual for command names in manpages.

Using

	doit () {
	  perl -e 'for (<>) { s/\`(git-[^\`.]*)\`/'\''\1'\''/g; print }'
	}
	for i in git*.txt config.txt diff*.txt blame*.txt fetch*.txt i18n.txt \
	        merge*.txt pretty*.txt pull*.txt rev*.txt urls*.txt
	do
	  doit <"$i" >"$i+" && mv "$i+" "$i"
	done
	git diff

.

Signed-off-by: Jonathan Nieder <jrnieder@uchicago.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Jonathan Nieder 2008-07-03 00:41:41 -05:00 committed by Junio C Hamano
parent 0979c10649
commit ba020ef5eb
117 changed files with 712 additions and 712 deletions

View File

@ -63,7 +63,7 @@ The values following the equals sign in variable assign are all either
a string, an integer, or a boolean. Boolean values may be given as yes/no, a string, an integer, or a boolean. Boolean values may be given as yes/no,
0/1 or true/false. Case is not significant in boolean values, when 0/1 or true/false. Case is not significant in boolean values, when
converting value to the canonical form using '--bool' type specifier; converting value to the canonical form using '--bool' type specifier;
`git-config` will ensure that the output is "true" or "false". 'git-config' will ensure that the output is "true" or "false".


String values may be entirely or partially enclosed in double quotes. String values may be entirely or partially enclosed in double quotes.
You need to enclose variable value in double quotes if you want to You need to enclose variable value in double quotes if you want to
@ -356,8 +356,8 @@ core.pager::


core.whitespace:: core.whitespace::
A comma separated list of common whitespace problems to A comma separated list of common whitespace problems to
notice. `git-diff` will use `color.diff.whitespace` to notice. 'git-diff' will use `color.diff.whitespace` to
highlight them, and `git-apply --whitespace=error` will highlight them, and 'git-apply --whitespace=error' will
consider them as errors: consider them as errors:
+ +
* `trailing-space` treats trailing whitespaces at the end of the line * `trailing-space` treats trailing whitespaces at the end of the line
@ -396,11 +396,11 @@ it will be treated as a shell command. For example, defining
"gitk --all --not ORIG_HEAD". "gitk --all --not ORIG_HEAD".


apply.whitespace:: apply.whitespace::
Tells `git-apply` how to handle whitespaces, in the same way Tells 'git-apply' how to handle whitespaces, in the same way
as the '--whitespace' option. See linkgit:git-apply[1]. as the '--whitespace' option. See linkgit:git-apply[1].


branch.autosetupmerge:: branch.autosetupmerge::
Tells `git-branch` and `git-checkout` to setup new branches Tells 'git-branch' and 'git-checkout' to setup new branches
so that linkgit:git-pull[1] will appropriately merge from the so that linkgit:git-pull[1] will appropriately merge from the
starting point branch. Note that even if this option is not set, starting point branch. Note that even if this option is not set,
this behavior can be chosen per-branch using the `--track` this behavior can be chosen per-branch using the `--track`
@ -411,7 +411,7 @@ branch.autosetupmerge::
branch. This option defaults to true. branch. This option defaults to true.


branch.autosetuprebase:: branch.autosetuprebase::
When a new branch is created with `git-branch` or `git-checkout` When a new branch is created with 'git-branch' or 'git-checkout'
that tracks another branch, this variable tells git to set that tracks another branch, this variable tells git to set
up pull to rebase instead of merge (see "branch.<name>.rebase"). up pull to rebase instead of merge (see "branch.<name>.rebase").
When `never`, rebase is never automatically set to true. When `never`, rebase is never automatically set to true.
@ -426,20 +426,20 @@ branch.autosetuprebase::
This option defaults to never. This option defaults to never.


branch.<name>.remote:: branch.<name>.remote::
When in branch <name>, it tells `git-fetch` which remote to fetch. When in branch <name>, it tells 'git-fetch' which remote to fetch.
If this option is not given, `git-fetch` defaults to remote "origin". If this option is not given, 'git-fetch' defaults to remote "origin".


branch.<name>.merge:: branch.<name>.merge::
When in branch <name>, it tells `git-fetch` the default When in branch <name>, it tells 'git-fetch' the default
refspec to be marked for merging in FETCH_HEAD. The value is refspec to be marked for merging in FETCH_HEAD. The value is
handled like the remote part of a refspec, and must match a handled like the remote part of a refspec, and must match a
ref which is fetched from the remote given by ref which is fetched from the remote given by
"branch.<name>.remote". "branch.<name>.remote".
The merge information is used by `git-pull` (which at first calls The merge information is used by 'git-pull' (which at first calls
`git-fetch`) to lookup the default branch for merging. Without 'git-fetch') to lookup the default branch for merging. Without
this option, `git-pull` defaults to merge the first refspec fetched. this option, 'git-pull' defaults to merge the first refspec fetched.
Specify multiple values to get an octopus merge. Specify multiple values to get an octopus merge.
If you wish to setup `git-pull` so that it merges into <name> from If you wish to setup 'git-pull' so that it merges into <name> from
another branch in the local repository, you can point another branch in the local repository, you can point
branch.<name>.merge to the desired branch, and use the special setting branch.<name>.merge to the desired branch, and use the special setting
`.` (a period) for branch.<name>.remote. `.` (a period) for branch.<name>.remote.
@ -513,7 +513,7 @@ color.interactive::
colors only when the output is to the terminal. Defaults to false. colors only when the output is to the terminal. Defaults to false.


color.interactive.<slot>:: color.interactive.<slot>::
Use customized color for `git-add --interactive` Use customized color for 'git-add --interactive'
output. `<slot>` may be `prompt`, `header`, or `help`, for output. `<slot>` may be `prompt`, `header`, or `help`, for
three distinct types of normal output from interactive three distinct types of normal output from interactive
programs. The values of these variables may be specified as programs. The values of these variables may be specified as
@ -550,14 +550,14 @@ color.ui::
take precedence over this setting. Defaults to false. take precedence over this setting. Defaults to false.


diff.autorefreshindex:: diff.autorefreshindex::
When using `git-diff` to compare with work tree When using 'git-diff' to compare with work tree
files, do not consider stat-only change as changed. files, do not consider stat-only change as changed.
Instead, silently run `git update-index --refresh` to Instead, silently run `git update-index --refresh` to
update the cached stat information for paths whose update the cached stat information for paths whose
contents in the work tree match the contents in the contents in the work tree match the contents in the
index. This option defaults to true. Note that this index. This option defaults to true. Note that this
affects only `git-diff` Porcelain, and not lower level affects only 'git-diff' Porcelain, and not lower level
`diff` commands, such as `git-diff-files`. `diff` commands, such as 'git-diff-files'.


diff.external:: diff.external::
If this config variable is set, diff generation is not If this config variable is set, diff generation is not
@ -625,37 +625,37 @@ gc.autopacklimit::
default value is 50. Setting this to 0 disables it. default value is 50. Setting this to 0 disables it.


gc.packrefs:: gc.packrefs::
`git-gc` does not run `git pack-refs` in a bare repository by 'git-gc' does not run `git pack-refs` in a bare repository by
default so that older dumb-transport clients can still fetch default so that older dumb-transport clients can still fetch
from the repository. Setting this to `true` lets `git-gc` from the repository. Setting this to `true` lets 'git-gc'
to run `git pack-refs`. Setting this to `false` tells to run `git pack-refs`. Setting this to `false` tells
`git-gc` never to run `git pack-refs`. The default setting is 'git-gc' never to run `git pack-refs`. The default setting is
`notbare`. Enable it only when you know you do not have to `notbare`. Enable it only when you know you do not have to
support such clients. The default setting will change to `true` support such clients. The default setting will change to `true`
at some stage, and setting this to `false` will continue to at some stage, and setting this to `false` will continue to
prevent `git pack-refs` from being run from `git-gc`. prevent `git pack-refs` from being run from 'git-gc'.


gc.pruneexpire:: gc.pruneexpire::
When `git-gc` is run, it will call `prune --expire 2.weeks.ago`. When 'git-gc' is run, it will call `prune --expire 2.weeks.ago`.
Override the grace period with this config variable. Override the grace period with this config variable.


gc.reflogexpire:: gc.reflogexpire::
`git-reflog expire` removes reflog entries older than 'git-reflog expire' removes reflog entries older than
this time; defaults to 90 days. this time; defaults to 90 days.


gc.reflogexpireunreachable:: gc.reflogexpireunreachable::
`git-reflog expire` removes reflog entries older than 'git-reflog expire' removes reflog entries older than
this time and are not reachable from the current tip; this time and are not reachable from the current tip;
defaults to 30 days. defaults to 30 days.


gc.rerereresolved:: gc.rerereresolved::
Records of conflicted merge you resolved earlier are Records of conflicted merge you resolved earlier are
kept for this many days when `git-rerere gc` is run. kept for this many days when 'git-rerere gc' is run.
The default is 60 days. See linkgit:git-rerere[1]. The default is 60 days. See linkgit:git-rerere[1].


gc.rerereunresolved:: gc.rerereunresolved::
Records of conflicted merge you have not resolved are Records of conflicted merge you have not resolved are
kept for this many days when `git-rerere gc` is run. kept for this many days when 'git-rerere gc' is run.
The default is 15 days. See linkgit:git-rerere[1]. The default is 15 days. See linkgit:git-rerere[1].


rerere.enabled:: rerere.enabled::
@ -821,7 +821,7 @@ i18n.commitEncoding::


i18n.logOutputEncoding:: i18n.logOutputEncoding::
Character encoding the commit messages are converted to when Character encoding the commit messages are converted to when
running `git-log` and friends. running 'git-log' and friends.


instaweb.browser:: instaweb.browser::
Specify the program that will be used to browse your working Specify the program that will be used to browse your working

View File

@ -21,7 +21,7 @@


-f:: -f::
--force:: --force::
When `git-fetch` is used with `<rbranch>:<lbranch>` When 'git-fetch' is used with `<rbranch>:<lbranch>`
refspec, it refuses to update the local branch refspec, it refuses to update the local branch
`<lbranch>` unless the remote branch `<rbranch>` it `<lbranch>` unless the remote branch `<rbranch>` it
fetches is a descendant of `<lbranch>`. This option fetches is a descendant of `<lbranch>`. This option
@ -53,10 +53,10 @@ endif::git-pull[]


-u:: -u::
--update-head-ok:: --update-head-ok::
By default `git-fetch` refuses to update the head which By default 'git-fetch' refuses to update the head which
corresponds to the current branch. This flag disables the corresponds to the current branch. This flag disables the
check. This is purely for the internal use for `git-pull` check. This is purely for the internal use for 'git-pull'
to communicate with `git-fetch`, and unless you are to communicate with 'git-fetch', and unless you are
implementing your own Porcelain you are not supposed to implementing your own Porcelain you are not supposed to
use it. use it.



View File

@ -35,11 +35,11 @@ OPTIONS


-k:: -k::
--keep:: --keep::
Pass `-k` flag to `git-mailinfo` (see linkgit:git-mailinfo[1]). Pass `-k` flag to 'git-mailinfo' (see linkgit:git-mailinfo[1]).


-u:: -u::
--utf8:: --utf8::
Pass `-u` flag to `git-mailinfo` (see linkgit:git-mailinfo[1]). Pass `-u` flag to 'git-mailinfo' (see linkgit:git-mailinfo[1]).
The proposed commit log message taken from the e-mail The proposed commit log message taken from the e-mail
is re-coded into UTF-8 encoding (configuration variable is re-coded into UTF-8 encoding (configuration variable
`i18n.commitencoding` can be used to specify project's `i18n.commitencoding` can be used to specify project's
@ -49,7 +49,7 @@ This was optional in prior versions of git, but now it is the
default. You could use `--no-utf8` to override this. default. You could use `--no-utf8` to override this.


--no-utf8:: --no-utf8::
Pass `-n` flag to `git-mailinfo` (see Pass `-n` flag to 'git-mailinfo' (see
linkgit:git-mailinfo[1]). linkgit:git-mailinfo[1]).


-3:: -3::
@ -61,17 +61,17 @@ default. You could use `--no-utf8` to override this.


-b:: -b::
--binary:: --binary::
Pass `--allow-binary-replacement` flag to `git-apply` Pass `--allow-binary-replacement` flag to 'git-apply'
(see linkgit:git-apply[1]). (see linkgit:git-apply[1]).


--whitespace=<option>:: --whitespace=<option>::
This flag is passed to the `git-apply` (see linkgit:git-apply[1]) This flag is passed to the 'git-apply' (see linkgit:git-apply[1])
program that applies program that applies
the patch. the patch.


-C<n>:: -C<n>::
-p<n>:: -p<n>::
These flags are passed to the `git-apply` (see linkgit:git-apply[1]) These flags are passed to the 'git-apply' (see linkgit:git-apply[1])
program that applies program that applies
the patch. the patch.


@ -97,7 +97,7 @@ default. You could use `--no-utf8` to override this.
to the screen before exiting. This overrides the to the screen before exiting. This overrides the
standard message informing you to use `--resolved` standard message informing you to use `--resolved`
or `--skip` to handle the failure. This is solely or `--skip` to handle the failure. This is solely
for internal use between `git-rebase` and `git-am`. for internal use between 'git-rebase' and 'git-am'.


DISCUSSION DISCUSSION
---------- ----------

View File

@ -64,7 +64,7 @@ OPTIONS
without using the working tree. This implies '--index'. without using the working tree. This implies '--index'.


--build-fake-ancestor <file>:: --build-fake-ancestor <file>::
Newer `git-diff` output has embedded 'index information' Newer 'git-diff' output has embedded 'index information'
for each blob to help identify the original version that for each blob to help identify the original version that
the patch applies to. When this flag is given, and if the patch applies to. When this flag is given, and if
the original versions of the blobs is available locally, the original versions of the blobs is available locally,
@ -78,7 +78,7 @@ the information is read from the current index instead.
Apply the patch in reverse. Apply the patch in reverse.


--reject:: --reject::
For atomicity, `git-apply` by default fails the whole patch and For atomicity, 'git-apply' by default fails the whole patch and
does not touch the working tree when some of the hunks does not touch the working tree when some of the hunks
do not apply. This option makes it apply do not apply. This option makes it apply
the parts of the patch that are applicable, and leave the the parts of the patch that are applicable, and leave the
@ -102,7 +102,7 @@ the information is read from the current index instead.
ever ignored. ever ignored.


--unidiff-zero:: --unidiff-zero::
By default, `git-apply` expects that the patch being By default, 'git-apply' expects that the patch being
applied is a unified diff with at least one line of context. applied is a unified diff with at least one line of context.
This provides good safety measures, but breaks down when This provides good safety measures, but breaks down when
applying a diff generated with --unified=0. To bypass these applying a diff generated with --unified=0. To bypass these
@ -113,7 +113,7 @@ discouraged.


--apply:: --apply::
If you use any of the options marked "Turns off If you use any of the options marked "Turns off
'apply'" above, `git-apply` reads and outputs the 'apply'" above, 'git-apply' reads and outputs the
information you asked without actually applying the information you asked without actually applying the
patch. Give this flag after those flags to also apply patch. Give this flag after those flags to also apply
the patch. the patch.
@ -191,7 +191,7 @@ apply.whitespace::


Submodules Submodules
---------- ----------
If the patch contains any changes to submodules then `git-apply` If the patch contains any changes to submodules then 'git-apply'
treats these changes as follows. treats these changes as follows.


If --index is specified (explicitly or implicitly), then the submodule If --index is specified (explicitly or implicitly), then the submodule

View File

@ -29,17 +29,17 @@ branches that have different roots, it will refuse to run. In that case,
edit your <archive/branch> parameters to define clearly the scope of the edit your <archive/branch> parameters to define clearly the scope of the
import. import.


`git-archimport` uses `tla` extensively in the background to access the 'git-archimport' uses `tla` extensively in the background to access the
Arch repository. Arch repository.
Make sure you have a recent version of `tla` available in the path. `tla` must Make sure you have a recent version of `tla` available in the path. `tla` must
know about the repositories you pass to `git-archimport`. know about the repositories you pass to 'git-archimport'.


For the initial import, `git-archimport` expects to find itself in an empty For the initial import, 'git-archimport' expects to find itself in an empty
directory. To follow the development of a project that uses Arch, rerun directory. To follow the development of a project that uses Arch, rerun
`git-archimport` with the same parameters as the initial import to perform 'git-archimport' with the same parameters as the initial import to perform
incremental imports. incremental imports.


While `git-archimport` will try to create sensible branch names for the While 'git-archimport' will try to create sensible branch names for the
archives that it imports, it is also possible to specify git branch names archives that it imports, it is also possible to specify git branch names
manually. To do so, write a git branch name after each <archive/branch> manually. To do so, write a git branch name after each <archive/branch>
parameter, separated by a colon. This way, you can shorten the Arch parameter, separated by a colon. This way, you can shorten the Arch
@ -84,7 +84,7 @@ OPTIONS


-o:: -o::
Use this for compatibility with old-style branch names used by Use this for compatibility with old-style branch names used by
earlier versions of `git-archimport`. Old-style branch names earlier versions of 'git-archimport'. Old-style branch names
were category--branch, whereas new-style branch names are were category--branch, whereas new-style branch names are
archive,category--branch--version. In both cases, names given archive,category--branch--version. In both cases, names given
on the command-line will override the automatically-generated on the command-line will override the automatically-generated

View File

@ -20,13 +20,13 @@ structure for the named tree, and writes it out to the standard
output. If <prefix> is specified it is output. If <prefix> is specified it is
prepended to the filenames in the archive. prepended to the filenames in the archive.


`git-archive` behaves differently when given a tree ID versus when 'git-archive' behaves differently when given a tree ID versus when
given a commit ID or tag ID. In the first case the current time is given a commit ID or tag ID. In the first case the current time is
used as modification time of each file in the archive. In the latter used as modification time of each file in the archive. In the latter
case the commit time as recorded in the referenced commit object is case the commit time as recorded in the referenced commit object is
used instead. Additionally the commit ID is stored in a global used instead. Additionally the commit ID is stored in a global
extended pax header if the tar format is used; it can be extracted extended pax header if the tar format is used; it can be extracted
using `git-get-tar-commit-id`. In ZIP files it is stored as a file using 'git-get-tar-commit-id'. In ZIP files it is stored as a file
comment. comment.


OPTIONS OPTIONS
@ -57,7 +57,7 @@ OPTIONS


--exec=<git-upload-archive>:: --exec=<git-upload-archive>::
Used with --remote to specify the path to the Used with --remote to specify the path to the
`git-upload-archive` on the remote side. 'git-upload-archive' on the remote side.


<tree-ish>:: <tree-ish>::
The tree or commit to produce an archive for. The tree or commit to produce an archive for.

View File

@ -26,7 +26,7 @@ on the subcommand:
git bisect log git bisect log
git bisect run <cmd>... git bisect run <cmd>...


This command uses `git-rev-list --bisect` to help drive the This command uses 'git-rev-list --bisect' to help drive the
binary search process to find which change introduced a bug, given an binary search process to find which change introduced a bug, given an
old "good" commit object name and a later "bad" commit object name. old "good" commit object name and a later "bad" commit object name.


@ -101,7 +101,7 @@ $ git bisect visualize
to see the currently remaining suspects in `gitk`. `visualize` is a bit to see the currently remaining suspects in `gitk`. `visualize` is a bit
too long to type and `view` is provided as a synonym. too long to type and `view` is provided as a synonym.


If 'DISPLAY' environment variable is not set, `git-log` is used If 'DISPLAY' environment variable is not set, 'git-log' is used
instead. You can even give command line options such as `-p` and instead. You can even give command line options such as `-p` and
`--stat`. `--stat`.


@ -215,7 +215,7 @@ tweaks (e.g., s/#define DEBUG 0/#define DEBUG 1/ in a header file, or
work around other problem this bisection is not interested in") work around other problem this bisection is not interested in")
applied to the revision being tested. applied to the revision being tested.


To cope with such a situation, after the inner `git-bisect` finds the To cope with such a situation, after the inner 'git-bisect' finds the
next revision to test, with the "run" script, you can apply that tweak next revision to test, with the "run" script, you can apply that tweak
before compiling, run the real test, and after the test decides if the before compiling, run the real test, and after the test decides if the
revision (possibly with the needed tweaks) passed the test, rewind the revision (possibly with the needed tweaks) passed the test, rewind the

View File

@ -21,7 +21,7 @@ last modified the line. Optionally, start annotating from the given revision.
Also it can limit the range of lines annotated. Also it can limit the range of lines annotated.


This report doesn't tell you anything about lines which have been deleted or This report doesn't tell you anything about lines which have been deleted or
replaced; you need to use a tool such as `git-diff` or the "pickaxe" replaced; you need to use a tool such as 'git-diff' or the "pickaxe"
interface briefly mentioned in the following paragraph. interface briefly mentioned in the following paragraph.


Apart from supporting file annotation, git also supports searching the Apart from supporting file annotation, git also supports searching the
@ -49,7 +49,7 @@ include::blame-options.txt[]
file (see `-M`). The first number listed is the score. file (see `-M`). The first number listed is the score.
This is the number of alphanumeric characters detected This is the number of alphanumeric characters detected
to be moved between or within files. This must be above to be moved between or within files. This must be above
a certain threshold for `git-blame` to consider those lines a certain threshold for 'git-blame' to consider those lines
of code to have been moved. of code to have been moved.


-f:: -f::
@ -100,7 +100,7 @@ header elements later.
SPECIFYING RANGES SPECIFYING RANGES
----------------- -----------------


Unlike `git-blame` and `git-annotate` in older git, the extent Unlike 'git-blame' and 'git-annotate' in older git, the extent
of annotation can be limited to both line ranges and revision of annotation can be limited to both line ranges and revision
ranges. When you are interested in finding the origin for ranges. When you are interested in finding the origin for
ll. 40-60 for file `foo`, you can use `-L` option like these ll. 40-60 for file `foo`, you can use `-L` option like these
@ -118,7 +118,7 @@ would limit the annotation to the body of `hello` subroutine.


When you are not interested in changes older than the version When you are not interested in changes older than the version
v2.6.18, or changes older than 3 weeks, you can use revision v2.6.18, or changes older than 3 weeks, you can use revision
range specifiers similar to `git-rev-list`: range specifiers similar to 'git-rev-list':


git blame v2.6.18.. -- foo git blame v2.6.18.. -- foo
git blame --since=3.weeks -- foo git blame --since=3.weeks -- foo

View File

@ -37,7 +37,7 @@ working tree to it; use "git checkout <newbranch>" to switch to the
new branch. new branch.


When a local branch is started off a remote branch, git sets up the When a local branch is started off a remote branch, git sets up the
branch so that `git-pull` will appropriately merge from branch so that 'git-pull' will appropriately merge from
the remote branch. This behavior may be changed via the global the remote branch. This behavior may be changed via the global
`branch.autosetupmerge` configuration flag. That setting can be `branch.autosetupmerge` configuration flag. That setting can be
overridden by using the `--track` and `--no-track` options. overridden by using the `--track` and `--no-track` options.
@ -54,7 +54,7 @@ has a reflog then the reflog will also be deleted.


Use -r together with -d to delete remote-tracking branches. Note, that it Use -r together with -d to delete remote-tracking branches. Note, that it
only makes sense to delete remote-tracking branches if they no longer exist only makes sense to delete remote-tracking branches if they no longer exist
in remote repository or if `git-fetch` was configured not to fetch in remote repository or if 'git-fetch' was configured not to fetch
them again. See also 'prune' subcommand of linkgit:git-remote[1] for way to them again. See also 'prune' subcommand of linkgit:git-remote[1] for way to
clean up all obsolete remote-tracking branches. clean up all obsolete remote-tracking branches.


@ -107,14 +107,14 @@ OPTIONS
Display the full sha1s in output listing rather than abbreviating them. Display the full sha1s in output listing rather than abbreviating them.


--track:: --track::
When creating a new branch, set up configuration so that `git-pull` When creating a new branch, set up configuration so that 'git-pull'
will automatically retrieve data from the start point, which must be will automatically retrieve data from the start point, which must be
a branch. Use this if you always pull from the same upstream branch a branch. Use this if you always pull from the same upstream branch
into the new branch, and if you don't want to use "git pull into the new branch, and if you don't want to use "git pull
<repository> <refspec>" explicitly. This behavior is the default <repository> <refspec>" explicitly. This behavior is the default
when the start point is a remote branch. Set the when the start point is a remote branch. Set the
branch.autosetupmerge configuration variable to `false` if you want branch.autosetupmerge configuration variable to `false` if you want
`git-checkout` and `git-branch` to always behave as if '--no-track' were 'git-checkout' and 'git-branch' to always behave as if '--no-track' were
given. Set it to `always` if you want this behavior when the given. Set it to `always` if you want this behavior when the
start-point is either a local or remote branch. start-point is either a local or remote branch.



View File

@ -21,9 +21,9 @@ Some workflows require that one or more branches of development on one
machine be replicated on another machine, but the two machines cannot machine be replicated on another machine, but the two machines cannot
be directly connected so the interactive git protocols (git, ssh, be directly connected so the interactive git protocols (git, ssh,
rsync, http) cannot be used. This command provides support for rsync, http) cannot be used. This command provides support for
`git-fetch` and `git-pull` to operate by packaging objects and references 'git-fetch' and 'git-pull' to operate by packaging objects and references
in an archive at the originating machine, then importing those into in an archive at the originating machine, then importing those into
another repository using `git-fetch` and `git-pull` another repository using 'git-fetch' and 'git-pull'
after moving the archive by some means (i.e., by sneakernet). As no after moving the archive by some means (i.e., by sneakernet). As no
direct connection between repositories exists, the user must specify a direct connection between repositories exists, the user must specify a
basis for the bundle that is held by the destination repository: the basis for the bundle that is held by the destination repository: the
@ -35,14 +35,14 @@ OPTIONS


create <file>:: create <file>::
Used to create a bundle named 'file'. This requires the Used to create a bundle named 'file'. This requires the
`git-rev-list` arguments to define the bundle contents. 'git-rev-list' arguments to define the bundle contents.


verify <file>:: verify <file>::
Used to check that a bundle file is valid and will apply Used to check that a bundle file is valid and will apply
cleanly to the current repository. This includes checks on the cleanly to the current repository. This includes checks on the
bundle format itself as well as checking that the prerequisite bundle format itself as well as checking that the prerequisite
commits exist and are fully linked in the current repository. commits exist and are fully linked in the current repository.
`git-bundle` prints a list of missing commits, if any, and exits 'git-bundle' prints a list of missing commits, if any, and exits
with non-zero status. with non-zero status.


list-heads <file>:: list-heads <file>::
@ -51,15 +51,15 @@ list-heads <file>::
printed out. printed out.


unbundle <file>:: unbundle <file>::
Passes the objects in the bundle to `git-index-pack` Passes the objects in the bundle to 'git-index-pack'
for storage in the repository, then prints the names of all for storage in the repository, then prints the names of all
defined references. If a reflist is given, only references defined references. If a reflist is given, only references
matching those in the given list are printed. This command is matching those in the given list are printed. This command is
really plumbing, intended to be called only by `git-fetch`. really plumbing, intended to be called only by 'git-fetch'.


[git-rev-list-args...]:: [git-rev-list-args...]::
A list of arguments, acceptable to `git-rev-parse` and A list of arguments, acceptable to 'git-rev-parse' and
`git-rev-list`, that specify the specific objects and references 'git-rev-list', that specify the specific objects and references
to transport. For example, "master~10..master" causes the to transport. For example, "master~10..master" causes the
current master reference to be packaged along with all objects current master reference to be packaged along with all objects
added since its 10th ancestor commit. There is no explicit added since its 10th ancestor commit. There is no explicit
@ -69,16 +69,16 @@ unbundle <file>::


[refname...]:: [refname...]::
A list of references used to limit the references reported as A list of references used to limit the references reported as
available. This is principally of use to `git-fetch`, which available. This is principally of use to 'git-fetch', which
expects to receive only those references asked for and not expects to receive only those references asked for and not
necessarily everything in the pack (in this case, `git-bundle` is necessarily everything in the pack (in this case, 'git-bundle' is
acting like `git-fetch-pack`). acting like 'git-fetch-pack').


SPECIFYING REFERENCES SPECIFYING REFERENCES
--------------------- ---------------------


`git-bundle` will only package references that are shown by 'git-bundle' will only package references that are shown by
`git-show-ref`: this includes heads, tags, and remote heads. References 'git-show-ref': this includes heads, tags, and remote heads. References
such as master~1 cannot be packaged, but are perfectly suitable for such as master~1 cannot be packaged, but are perfectly suitable for
defining the basis. More than one reference may be packaged, and more defining the basis. More than one reference may be packaged, and more
than one basis can be specified. The objects packaged are those not than one basis can be specified. The objects packaged are those not

View File

@ -47,7 +47,7 @@ refname expressions (see linkgit:git-rev-parse[1]). Namely:
. colon `:` is used as in `srcref:dstref` to mean "use srcref\'s . colon `:` is used as in `srcref:dstref` to mean "use srcref\'s
value and store it in dstref" in fetch and push operations. value and store it in dstref" in fetch and push operations.
It may also be used to select a specific object such as with It may also be used to select a specific object such as with
`git-cat-file`: "git cat-file blob v1.3.3:refs.c". 'git-cat-file': "git cat-file blob v1.3.3:refs.c".




GIT GIT

View File

@ -88,7 +88,7 @@ $ find . -name '*.h' -print0 | xargs -0 git checkout-index -f --
which will force all existing `*.h` files to be replaced with their which will force all existing `*.h` files to be replaced with their
cached copies. If an empty command line implied "all", then this would cached copies. If an empty command line implied "all", then this would
force-refresh everything in the index, which was not the point. But force-refresh everything in the index, which was not the point. But
since `git-checkout-index` accepts --stdin it would be faster to use: since 'git-checkout-index' accepts --stdin it would be faster to use:


---------------- ----------------
$ find . -name '*.h' -print0 | git checkout-index -f -z --stdin $ find . -name '*.h' -print0 | git checkout-index -f -z --stdin
@ -102,7 +102,7 @@ Using `--` is probably a good policy in scripts.
Using --temp or --stage=all Using --temp or --stage=all
--------------------------- ---------------------------
When `--temp` is used (or implied by `--stage=all`) When `--temp` is used (or implied by `--stage=all`)
`git-checkout-index` will create a temporary file for each index 'git-checkout-index' will create a temporary file for each index
entry being checked out. The index will not be updated with stat entry being checked out. The index will not be updated with stat
information. These options can be useful if the caller needs all information. These options can be useful if the caller needs all
stages of all unmerged entries so that the unmerged files can be stages of all unmerged entries so that the unmerged files can be
@ -147,9 +147,9 @@ To update and refresh only the files already checked out::
$ git checkout-index -n -f -a && git update-index --ignore-missing --refresh $ git checkout-index -n -f -a && git update-index --ignore-missing --refresh
---------------- ----------------


Using `git-checkout-index` to "export an entire tree":: Using 'git-checkout-index' to "export an entire tree"::
The prefix ability basically makes it trivial to use The prefix ability basically makes it trivial to use
`git-checkout-index` as an "export as tree" function. 'git-checkout-index' as an "export as tree" function.
Just read the desired tree into the index, and do: Just read the desired tree into the index, and do:
+ +
---------------- ----------------

View File

@ -49,14 +49,14 @@ OPTIONS


-t:: -t::
--track:: --track::
When creating a new branch, set up configuration so that `git-pull` When creating a new branch, set up configuration so that 'git-pull'
will automatically retrieve data from the start point, which must be will automatically retrieve data from the start point, which must be
a branch. Use this if you always pull from the same upstream branch a branch. Use this if you always pull from the same upstream branch
into the new branch, and if you don't want to use "git pull into the new branch, and if you don't want to use "git pull
<repository> <refspec>" explicitly. This behavior is the default <repository> <refspec>" explicitly. This behavior is the default
when the start point is a remote branch. Set the when the start point is a remote branch. Set the
branch.autosetupmerge configuration variable to `false` if you want branch.autosetupmerge configuration variable to `false` if you want
`git-checkout` and `git-branch` to always behave as if '--no-track' were 'git-checkout' and 'git-branch' to always behave as if '--no-track' were
given. Set it to `always` if you want this behavior when the given. Set it to `always` if you want this behavior when the
start-point is either a local or remote branch. start-point is either a local or remote branch.



View File

@ -24,7 +24,7 @@ OPTIONS


-e:: -e::
--edit:: --edit::
With this option, `git-cherry-pick` will let you edit the commit With this option, 'git-cherry-pick' will let you edit the commit
message prior to committing. message prior to committing.


-x:: -x::

View File

@ -14,7 +14,7 @@ DESCRIPTION
The changeset (or "diff") of each commit between the fork-point and <head> The changeset (or "diff") of each commit between the fork-point and <head>
is compared against each commit between the fork-point and <upstream>. is compared against each commit between the fork-point and <upstream>.
The commits are compared with their 'patch id', obtained from The commits are compared with their 'patch id', obtained from
the `git-patch-id` program. the 'git-patch-id' program.


Every commit that doesn't exist in the <upstream> branch Every commit that doesn't exist in the <upstream> branch
has its id (sha1) reported, prefixed by a symbol. The ones that have has its id (sha1) reported, prefixed by a symbol. The ones that have
@ -37,8 +37,8 @@ to and including <limit> are not reported:
\__*__*__<limit>__-__+__> <head> \__*__*__<limit>__-__+__> <head>




Because `git-cherry` compares the changeset rather than the commit id Because 'git-cherry' compares the changeset rather than the commit id
(sha1), you can use `git-cherry` to find out if a commit you made locally (sha1), you can use 'git-cherry' to find out if a commit you made locally
has been applied <upstream> under a different commit id. For example, has been applied <upstream> under a different commit id. For example,
this will happen if you're feeding patches <upstream> via email rather this will happen if you're feeding patches <upstream> via email rather
than pushing or pulling commits directly. than pushing or pulling commits directly.

View File

@ -14,9 +14,9 @@ DESCRIPTION
A Tcl/Tk based graphical interface to review modified files, stage A Tcl/Tk based graphical interface to review modified files, stage
them into the index, enter a commit message and record the new them into the index, enter a commit message and record the new
commit onto the current branch. This interface is an alternative commit onto the current branch. This interface is an alternative
to the less interactive `git-commit` program. to the less interactive 'git-commit' program.


`git-citool` is actually a standard alias for `git gui citool`. 'git-citool' is actually a standard alias for `git gui citool`.
See linkgit:git-gui[1] for more details. See linkgit:git-gui[1] for more details.


Author Author

View File

@ -27,7 +27,7 @@ OPTIONS


-f:: -f::
If the git configuration specifies clean.requireForce as true, If the git configuration specifies clean.requireForce as true,
`git-clean` will refuse to run unless given -f or -n. 'git-clean' will refuse to run unless given -f or -n.


-n:: -n::
--dry-run:: --dry-run::
@ -41,7 +41,7 @@ OPTIONS
-x:: -x::
Don't use the ignore rules. This allows removing all untracked Don't use the ignore rules. This allows removing all untracked
files, including build products. This can be used (possibly in files, including build products. This can be used (possibly in
conjunction with `git-reset`) to create a pristine conjunction with 'git-reset') to create a pristine
working directory to test a clean build. working directory to test a clean build.


-X:: -X::

View File

@ -68,7 +68,7 @@ it unless you understand what it does. If you clone your
repository using this option and then delete branches (or use any repository using this option and then delete branches (or use any
other git command that makes any existing commit unreferenced) in the other git command that makes any existing commit unreferenced) in the
source repository, some objects may become unreferenced (or dangling). source repository, some objects may become unreferenced (or dangling).
These objects may be removed by normal git operations (such as `git-commit`) These objects may be removed by normal git operations (such as 'git-commit')
which automatically call `git gc --auto`. (See linkgit:git-gc[1].) which automatically call `git gc --auto`. (See linkgit:git-gc[1].)
If these objects are removed and were referenced by the cloned repository, If these objects are removed and were referenced by the cloned repository,
then the cloned repository will become corrupt. then the cloned repository will become corrupt.
@ -88,7 +88,7 @@ then the cloned repository will become corrupt.
--quiet:: --quiet::
-q:: -q::
Operate quietly. This flag is passed to "rsync" and Operate quietly. This flag is passed to "rsync" and
`git-fetch-pack` commands when given. 'git-fetch-pack' commands when given.


--no-checkout:: --no-checkout::
-n:: -n::
@ -114,7 +114,7 @@ then the cloned repository will become corrupt.
--upload-pack <upload-pack>:: --upload-pack <upload-pack>::
-u <upload-pack>:: -u <upload-pack>::
When given, and the repository to clone from is handled When given, and the repository to clone from is handled
by `git-fetch-pack`, `--exec=<upload-pack>` is passed to by 'git-fetch-pack', `--exec=<upload-pack>` is passed to
the command to specify non-default path for the command the command to specify non-default path for the command
run on the other end. run on the other end.



View File

@ -70,7 +70,7 @@ is taken from the configuration items user.name and user.email, or, if not
present, system user name and fully qualified hostname. present, system user name and fully qualified hostname.


A commit comment is read from stdin. If a changelog A commit comment is read from stdin. If a changelog
entry is not provided via "<" redirection, `git-commit-tree` will just wait entry is not provided via "<" redirection, 'git-commit-tree' will just wait
for one to be entered and terminated with ^D. for one to be entered and terminated with ^D.





View File

@ -20,11 +20,11 @@ with a log message from the user describing the changes.


The content to be added can be specified in several ways: The content to be added can be specified in several ways:


1. by using `git-add` to incrementally "add" changes to the 1. by using 'git-add' to incrementally "add" changes to the
index before using the 'commit' command (Note: even modified index before using the 'commit' command (Note: even modified
files must be "added"); files must be "added");


2. by using `git-rm` to remove files from the working tree 2. by using 'git-rm' to remove files from the working tree
and the index, again before using the 'commit' command; and the index, again before using the 'commit' command;


3. by listing files as arguments to the 'commit' command, in which 3. by listing files as arguments to the 'commit' command, in which
@ -39,15 +39,15 @@ The content to be added can be specified in several ways:


5. by using the --interactive switch with the 'commit' command to decide one 5. by using the --interactive switch with the 'commit' command to decide one
by one which files should be part of the commit, before finalizing the by one which files should be part of the commit, before finalizing the
operation. Currently, this is done by invoking `git-add --interactive`. operation. Currently, this is done by invoking 'git-add --interactive'.


The `git-status` command can be used to obtain a The 'git-status' command can be used to obtain a
summary of what is included by any of the above for the next summary of what is included by any of the above for the next
commit by giving the same set of parameters you would give to commit by giving the same set of parameters you would give to
this command. this command.


If you make a commit and then find a mistake immediately after If you make a commit and then find a mistake immediately after
that, you can recover from it with `git-reset`. that, you can recover from it with 'git-reset'.




OPTIONS OPTIONS
@ -205,10 +205,10 @@ EXAMPLES
-------- --------
When recording your own work, the contents of modified files in When recording your own work, the contents of modified files in
your working tree are temporarily stored to a staging area your working tree are temporarily stored to a staging area
called the "index" with `git-add`. A file can be called the "index" with 'git-add'. A file can be
reverted back, only in the index but not in the working tree, reverted back, only in the index but not in the working tree,
to that of the last commit with `git reset HEAD -- <file>`, to that of the last commit with `git reset HEAD -- <file>`,
which effectively reverts `git-add` and prevents the changes to which effectively reverts 'git-add' and prevents the changes to
this file from participating in the next commit. After building this file from participating in the next commit. After building
the state to be committed incrementally with these commands, the state to be committed incrementally with these commands,
`git commit` (without any pathname parameter) is used to record what `git commit` (without any pathname parameter) is used to record what
@ -264,13 +264,13 @@ $ git commit
this second commit would record the changes to `hello.c` and this second commit would record the changes to `hello.c` and
`hello.h` as expected. `hello.h` as expected.


After a merge (initiated by `git-merge` or `git-pull`) stops After a merge (initiated by 'git-merge' or 'git-pull') stops
because of conflicts, cleanly merged because of conflicts, cleanly merged
paths are already staged to be committed for you, and paths that paths are already staged to be committed for you, and paths that
conflicted are left in unmerged state. You would have to first conflicted are left in unmerged state. You would have to first
check which paths are conflicting with `git-status` check which paths are conflicting with 'git-status'
and after fixing them manually in your working tree, you would and after fixing them manually in your working tree, you would
stage the result as usual with `git-add`: stage the result as usual with 'git-add':


------------ ------------
$ git status | grep unmerged $ git status | grep unmerged

View File

@ -37,7 +37,7 @@ you want to handle the lines that do *not* match the regex, just
prepend a single exclamation mark in front (see also <<EXAMPLES>>). prepend a single exclamation mark in front (see also <<EXAMPLES>>).


The type specifier can be either '--int' or '--bool', which will make The type specifier can be either '--int' or '--bool', which will make
`git-config` ensure that the variable(s) are of the given type and 'git-config' ensure that the variable(s) are of the given type and
convert the value to the canonical form (simple decimal number for int, convert the value to the canonical form (simple decimal number for int,
a "true" or "false" string for bool). If no type specifier is passed, a "true" or "false" string for bool). If no type specifier is passed,
no checks or transformations are performed on the value. no checks or transformations are performed on the value.
@ -122,10 +122,10 @@ See also <<FILES>>.
List all variables set in config file. List all variables set in config file.


--bool:: --bool::
`git-config` will ensure that the output is "true" or "false" 'git-config' will ensure that the output is "true" or "false"


--int:: --int::
`git-config` will ensure that the output is a simple 'git-config' will ensure that the output is a simple
decimal number. An optional value suffix of 'k', 'm', or 'g' decimal number. An optional value suffix of 'k', 'm', or 'g'
in the config file will cause the value to be multiplied in the config file will cause the value to be multiplied
by 1024, 1048576, or 1073741824 prior to output. by 1024, 1048576, or 1073741824 prior to output.
@ -162,7 +162,7 @@ FILES
----- -----


If not set explicitly with '--file', there are three files where If not set explicitly with '--file', there are three files where
`git-config` will search for configuration options: 'git-config' will search for configuration options:


$GIT_DIR/config:: $GIT_DIR/config::
Repository specific configuration file. (The filename is Repository specific configuration file. (The filename is
@ -179,12 +179,12 @@ $(prefix)/etc/gitconfig::
If no further options are given, all reading options will read all of these If no further options are given, all reading options will read all of these
files that are available. If the global or the system-wide configuration files that are available. If the global or the system-wide configuration
file are not available they will be ignored. If the repository configuration file are not available they will be ignored. If the repository configuration
file is not available or readable, `git-config` will exit with a non-zero file is not available or readable, 'git-config' will exit with a non-zero
error code. However, in neither case will an error message be issued. error code. However, in neither case will an error message be issued.


All writing options will per default write to the repository specific All writing options will per default write to the repository specific
configuration file. Note that this also affects options like '--replace-all' configuration file. Note that this also affects options like '--replace-all'
and '--unset'. *`git-config` will only ever change one file at a time*. and '--unset'. *'git-config' will only ever change one file at a time*.


You can override these rules either by command line options or by environment You can override these rules either by command line options or by environment
variables. The '--global' and the '--system' options will limit the file used variables. The '--global' and the '--system' options will limit the file used

View File

@ -27,7 +27,7 @@ by default.


Supports file additions, removals, and commits that affect binary files. Supports file additions, removals, and commits that affect binary files.


If the commit is a merge commit, you must tell `git-cvsexportcommit` what If the commit is a merge commit, you must tell 'git-cvsexportcommit' what
parent the changeset should be done against. parent the changeset should be done against.


OPTIONS OPTIONS

View File

@ -25,9 +25,9 @@ Splitting the CVS log into patch sets is done by 'cvsps'.
At least version 2.1 is required. At least version 2.1 is required.


You should *never* do any work of your own on the branches that are You should *never* do any work of your own on the branches that are
created by `git-cvsimport`. By default initial import will create and populate a created by 'git-cvsimport'. By default initial import will create and populate a
"master" branch from the CVS repository's main branch which you're free "master" branch from the CVS repository's main branch which you're free
to work with; after that, you need to `git-merge` incremental imports, or to work with; after that, you need to 'git-merge' incremental imports, or
any CVS branches, yourself. It is advisable to specify a named remote via any CVS branches, yourself. It is advisable to specify a named remote via
-r to separate and protect the incoming branches. -r to separate and protect the incoming branches.


@ -40,13 +40,13 @@ OPTIONS
-d <CVSROOT>:: -d <CVSROOT>::
The root of the CVS archive. May be local (a simple path) or remote; The root of the CVS archive. May be local (a simple path) or remote;
currently, only the :local:, :ext: and :pserver: access methods currently, only the :local:, :ext: and :pserver: access methods
are supported. If not given, `git-cvsimport` will try to read it are supported. If not given, 'git-cvsimport' will try to read it
from `CVS/Root`. If no such file exists, it checks for the from `CVS/Root`. If no such file exists, it checks for the
`CVSROOT` environment variable. `CVSROOT` environment variable.


<CVS_module>:: <CVS_module>::
The CVS module you want to import. Relative to <CVSROOT>. The CVS module you want to import. Relative to <CVSROOT>.
If not given, `git-cvsimport` tries to read it from If not given, 'git-cvsimport' tries to read it from
`CVS/Repository`. `CVS/Repository`.


-C <target-dir>:: -C <target-dir>::
@ -56,14 +56,14 @@ OPTIONS
-r <remote>:: -r <remote>::
The git remote to import this CVS repository into. The git remote to import this CVS repository into.
Moves all CVS branches into remotes/<remote>/<branch> Moves all CVS branches into remotes/<remote>/<branch>
akin to the `git-clone` "--use-separate-remote" option. akin to the 'git-clone' "--use-separate-remote" option.


-o <branch-for-HEAD>:: -o <branch-for-HEAD>::
When no remote is specified (via -r) the 'HEAD' branch When no remote is specified (via -r) the 'HEAD' branch
from CVS is imported to the 'origin' branch within the git from CVS is imported to the 'origin' branch within the git
repository, as 'HEAD' already has a special meaning for git. repository, as 'HEAD' already has a special meaning for git.
When a remote is specified the 'HEAD' branch is named When a remote is specified the 'HEAD' branch is named
remotes/<remote>/master mirroring `git-clone` behaviour. remotes/<remote>/master mirroring 'git-clone' behaviour.
Use this option if you want to import into a different Use this option if you want to import into a different
branch. branch.
+ +
@ -136,17 +136,17 @@ This option can be used several times to provide several detection regexes.


--------- ---------
+ +
`git-cvsimport` will make it appear as those authors had 'git-cvsimport' will make it appear as those authors had
their GIT_AUTHOR_NAME and GIT_AUTHOR_EMAIL set properly their GIT_AUTHOR_NAME and GIT_AUTHOR_EMAIL set properly
all along. all along.
+ +
For convenience, this data is saved to `$GIT_DIR/cvs-authors` For convenience, this data is saved to `$GIT_DIR/cvs-authors`
each time the '-A' option is provided and read from that same each time the '-A' option is provided and read from that same
file each time `git-cvsimport` is run. file each time 'git-cvsimport' is run.
+ +
It is not recommended to use this feature if you intend to It is not recommended to use this feature if you intend to
export changes back to CVS again later with export changes back to CVS again later with
`git-cvsexportcommit`. 'git-cvsexportcommit'.


-h:: -h::
Print a short usage message and exit. Print a short usage message and exit.

View File

@ -77,7 +77,7 @@ over pserver for anonymous CVS access.


CVS clients cannot tag, branch or perform GIT merges. CVS clients cannot tag, branch or perform GIT merges.


`git-cvsserver` maps GIT branches to CVS modules. This is very different 'git-cvsserver' maps GIT branches to CVS modules. This is very different
from what most CVS users would expect since in CVS modules usually represent from what most CVS users would expect since in CVS modules usually represent
one or more directories. one or more directories.


@ -103,7 +103,7 @@ looks like
------ ------
No special setup is needed for SSH access, other than having GIT tools No special setup is needed for SSH access, other than having GIT tools
in the PATH. If you have clients that do not accept the CVS_SERVER in the PATH. If you have clients that do not accept the CVS_SERVER
environment variable, you can rename `git-cvsserver` to `cvs`. environment variable, you can rename 'git-cvsserver' to `cvs`.


Note: Newer CVS versions (>= 1.12.11) also support specifying Note: Newer CVS versions (>= 1.12.11) also support specifying
CVS_SERVER directly in CVSROOT like CVS_SERVER directly in CVSROOT like
@ -113,9 +113,9 @@ cvs -d ":ext;CVS_SERVER=git-cvsserver:user@server/path/repo.git" co <HEAD_name>
------ ------
This has the advantage that it will be saved in your 'CVS/Root' files and This has the advantage that it will be saved in your 'CVS/Root' files and
you don't need to worry about always setting the correct environment you don't need to worry about always setting the correct environment
variable. SSH users restricted to `git-shell` don't need to override the default variable. SSH users restricted to 'git-shell' don't need to override the default
with CVS_SERVER (and shouldn't) as `git-shell` understands `cvs` to mean with CVS_SERVER (and shouldn't) as 'git-shell' understands `cvs` to mean
`git-cvsserver` and pretends that the other end runs the real `cvs` better. 'git-cvsserver' and pretends that the other end runs the real `cvs` better.
-- --
2. For each repo that you want accessible from CVS you need to edit config in 2. For each repo that you want accessible from CVS you need to edit config in
the repo and add the following section. the repo and add the following section.
@ -128,7 +128,7 @@ with CVS_SERVER (and shouldn't) as `git-shell` understands `cvs` to mean
logfile=/path/to/logfile logfile=/path/to/logfile


------ ------
Note: you need to ensure each user that is going to invoke `git-cvsserver` has Note: you need to ensure each user that is going to invoke 'git-cvsserver' has
write access to the log file and to the database (see write access to the log file and to the database (see
<<dbbackend,Database Backend>>. If you want to offer write access over <<dbbackend,Database Backend>>. If you want to offer write access over
SSH, the users of course also need write access to the git repository itself. SSH, the users of course also need write access to the git repository itself.
@ -150,7 +150,7 @@ allowing access over SSH.
automatically saving it in your 'CVS/Root' files, then you need to set them automatically saving it in your 'CVS/Root' files, then you need to set them
explicitly in your environment. CVSROOT should be set as per normal, but the explicitly in your environment. CVSROOT should be set as per normal, but the
directory should point at the appropriate git repo. As above, for SSH clients directory should point at the appropriate git repo. As above, for SSH clients
_not_ restricted to `git-shell`, CVS_SERVER should be set to `git-cvsserver`. _not_ restricted to 'git-shell', CVS_SERVER should be set to 'git-cvsserver'.
+ +
-- --
------ ------
@ -178,27 +178,27 @@ allowing access over SSH.
Database Backend Database Backend
---------------- ----------------


`git-cvsserver` uses one database per git head (i.e. CVS module) to 'git-cvsserver' uses one database per git head (i.e. CVS module) to
store information about the repository for faster access. The store information about the repository for faster access. The
database doesn't contain any persistent data and can be completely database doesn't contain any persistent data and can be completely
regenerated from the git repository at any time. The database regenerated from the git repository at any time. The database
needs to be updated (i.e. written to) after every commit. needs to be updated (i.e. written to) after every commit.


If the commit is done directly by using `git` (as opposed to If the commit is done directly by using `git` (as opposed to
using `git-cvsserver`) the update will need to happen on the using 'git-cvsserver') the update will need to happen on the
next repository access by `git-cvsserver`, independent of next repository access by 'git-cvsserver', independent of
access method and requested operation. access method and requested operation.


That means that even if you offer only read access (e.g. by using That means that even if you offer only read access (e.g. by using
the pserver method), `git-cvsserver` should have write access to the pserver method), 'git-cvsserver' should have write access to
the database to work reliably (otherwise you need to make sure the database to work reliably (otherwise you need to make sure
that the database is up-to-date any time `git-cvsserver` is executed). that the database is up-to-date any time 'git-cvsserver' is executed).


By default it uses SQLite databases in the git directory, named By default it uses SQLite databases in the git directory, named
`gitcvs.<module_name>.sqlite`. Note that the SQLite backend creates `gitcvs.<module_name>.sqlite`. Note that the SQLite backend creates
temporary files in the same directory as the database file on temporary files in the same directory as the database file on
write so it might not be enough to grant the users using write so it might not be enough to grant the users using
`git-cvsserver` write access to the database file without granting 'git-cvsserver' write access to the database file without granting
them write access to the directory, too. them write access to the directory, too.


You can configure the database backend with the following You can configure the database backend with the following
@ -207,7 +207,7 @@ configuration variables:
Configuring database backend Configuring database backend
~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~


`git-cvsserver` uses the Perl DBI module. Please also read 'git-cvsserver' uses the Perl DBI module. Please also read
its documentation if changing these variables, especially its documentation if changing these variables, especially
about `DBI->connect()`. about `DBI->connect()`.


@ -259,7 +259,7 @@ In `dbdriver` and `dbuser` you can use the following variables:
%a:: %a::
access method (one of "ext" or "pserver") access method (one of "ext" or "pserver")
%u:: %u::
Name of the user running `git-cvsserver`. Name of the user running 'git-cvsserver'.
If no name can be determined, the If no name can be determined, the
numeric uid is used. numeric uid is used.


@ -280,13 +280,13 @@ To get a checkout with the Eclipse CVS client:
Protocol notes: If you are using anonymous access via pserver, just select that. Protocol notes: If you are using anonymous access via pserver, just select that.
Those using SSH access should choose the 'ext' protocol, and configure 'ext' Those using SSH access should choose the 'ext' protocol, and configure 'ext'
access on the Preferences->Team->CVS->ExtConnection pane. Set CVS_SERVER to access on the Preferences->Team->CVS->ExtConnection pane. Set CVS_SERVER to
`git-cvsserver`. Note that password support is not good when using 'ext', 'git-cvsserver'. Note that password support is not good when using 'ext',
you will definitely want to have SSH keys setup. you will definitely want to have SSH keys setup.


Alternatively, you can just use the non-standard extssh protocol that Eclipse Alternatively, you can just use the non-standard extssh protocol that Eclipse
offer. In that case CVS_SERVER is ignored, and you will have to replace 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` the cvs utility on the server with 'git-cvsserver' or manipulate your `.bashrc`
so that calling 'cvs' effectively calls `git-cvsserver`. so that calling 'cvs' effectively calls 'git-cvsserver'.


Clients known to work Clients known to work
--------------------- ---------------------
@ -334,7 +334,7 @@ and `gitcvs.allbinary` to "guess".


Dependencies Dependencies
------------ ------------
`git-cvsserver` depends on DBD::SQLite. 'git-cvsserver' depends on DBD::SQLite.


Copyright and Authors Copyright and Authors
--------------------- ---------------------

View File

@ -27,36 +27,36 @@ that service if it is enabled.
It verifies that the directory has the magic file "git-daemon-export-ok", and It verifies that the directory has the magic file "git-daemon-export-ok", and
it will refuse to export any git directory that hasn't explicitly been marked it will refuse to export any git directory that hasn't explicitly been marked
for export this way (unless the '--export-all' parameter is specified). If you for export this way (unless the '--export-all' parameter is specified). If you
pass some directory paths as `git-daemon` arguments, you can further restrict pass some directory paths as 'git-daemon' arguments, you can further restrict
the offers to a whitelist comprising of those. the offers to a whitelist comprising of those.


By default, only `upload-pack` service is enabled, which serves By default, only `upload-pack` service is enabled, which serves
`git-fetch-pack` and `git-ls-remote` clients, which are invoked 'git-fetch-pack' and 'git-ls-remote' clients, which are invoked
from `git-fetch`, `git-pull`, and `git-clone`. from 'git-fetch', 'git-pull', and 'git-clone'.


This is ideally suited for read-only updates, i.e., pulling from This is ideally suited for read-only updates, i.e., pulling from
git repositories. git repositories.


An `upload-archive` also exists to serve `git-archive`. An `upload-archive` also exists to serve 'git-archive'.


OPTIONS OPTIONS
------- -------
--strict-paths:: --strict-paths::
Match paths exactly (i.e. don't allow "/foo/repo" when the real path is Match paths exactly (i.e. don't allow "/foo/repo" when the real path is
"/foo/repo.git" or "/foo/repo/.git") and don't do user-relative paths. "/foo/repo.git" or "/foo/repo/.git") and don't do user-relative paths.
`git-daemon` will refuse to start when this option is enabled and no 'git-daemon' will refuse to start when this option is enabled and no
whitelist is specified. whitelist is specified.


--base-path:: --base-path::
Remap all the path requests as relative to the given path. Remap all the path requests as relative to the given path.
This is sort of "GIT root" - if you run `git-daemon` with This is sort of "GIT root" - if you run 'git-daemon' with
'--base-path=/srv/git' on example.com, then if you later try to pull '--base-path=/srv/git' on example.com, then if you later try to pull
'git://example.com/hello.git', `git-daemon` will interpret the path 'git://example.com/hello.git', 'git-daemon' will interpret the path
as '/srv/git/hello.git'. as '/srv/git/hello.git'.


--base-path-relaxed:: --base-path-relaxed::
If --base-path is enabled and repo lookup fails, with this option If --base-path is enabled and repo lookup fails, with this option
`git-daemon` will attempt to lookup without prefixing the base path. 'git-daemon' will attempt to lookup without prefixing the base path.
This is useful for switching to --base-path usage, while still This is useful for switching to --base-path usage, while still
allowing the old paths. allowing the old paths.


@ -138,7 +138,7 @@ OPTIONS
+ +
Giving these options is an error when used with `--inetd`; use Giving these options is an error when used with `--inetd`; use
the facility of inet daemon to achieve the same before spawning the facility of inet daemon to achieve the same before spawning
`git-daemon` if needed. 'git-daemon' if needed.


--enable=service:: --enable=service::
--disable=service:: --disable=service::
@ -164,24 +164,24 @@ SERVICES


These services can be globally enabled/disabled using the These services can be globally enabled/disabled using the
command line options of this command. If a finer-grained command line options of this command. If a finer-grained
control is desired (e.g. to allow `git-archive` to be run control is desired (e.g. to allow 'git-archive' to be run
against only in a few selected repositories the daemon serves), against only in a few selected repositories the daemon serves),
the per-repository configuration file can be used to enable or the per-repository configuration file can be used to enable or
disable them. disable them.


upload-pack:: upload-pack::
This serves `git-fetch-pack` and `git-ls-remote` This serves 'git-fetch-pack' and 'git-ls-remote'
clients. It is enabled by default, but a repository can clients. It is enabled by default, but a repository can
disable it by setting `daemon.uploadpack` configuration disable it by setting `daemon.uploadpack` configuration
item to `false`. item to `false`.


upload-archive:: upload-archive::
This serves `git-archive --remote`. It is disabled by This serves 'git-archive --remote'. It is disabled by
default, but a repository can enable it by setting default, but a repository can enable it by setting
`daemon.uploadarch` configuration item to `true`. `daemon.uploadarch` configuration item to `true`.


receive-pack:: receive-pack::
This serves `git-send-pack` clients, allowing anonymous This serves 'git-send-pack' clients, allowing anonymous
push. It is disabled by default, as there is _no_ push. It is disabled by default, as there is _no_
authentication in the protocol (in other words, anybody authentication in the protocol (in other words, anybody
can push anything into the repository, including removal can push anything into the repository, including removal
@ -199,8 +199,8 @@ $ grep 9418 /etc/services
git 9418/tcp # Git Version Control System git 9418/tcp # Git Version Control System
------------ ------------


`git-daemon` as inetd server:: 'git-daemon' as inetd server::
To set up `git-daemon` as an inetd service that handles any To set up 'git-daemon' as an inetd service that handles any
repository under the whitelisted set of directories, /pub/foo repository under the whitelisted set of directories, /pub/foo
and /pub/bar, place an entry like the following into and /pub/bar, place an entry like the following into
/etc/inetd all on one line: /etc/inetd all on one line:
@ -212,8 +212,8 @@ git 9418/tcp # Git Version Control System
------------------------------------------------ ------------------------------------------------




`git-daemon` as inetd server for virtual hosts:: 'git-daemon' as inetd server for virtual hosts::
To set up `git-daemon` as an inetd service that handles To set up 'git-daemon' as an inetd service that handles
repositories for different virtual hosts, `www.example.com` repositories for different virtual hosts, `www.example.com`
and `www.example.org`, place an entry like the following into and `www.example.org`, place an entry like the following into
`/etc/inetd` all on one line: `/etc/inetd` all on one line:
@ -235,8 +235,8 @@ clients, a symlink from `/software` into the appropriate
default repository could be made as well. default repository could be made as well.




`git-daemon` as regular daemon for virtual hosts:: 'git-daemon' as regular daemon for virtual hosts::
To set up `git-daemon` as a regular, non-inetd service that To set up 'git-daemon' as a regular, non-inetd service that
handles repositories for multiple virtual hosts based on handles repositories for multiple virtual hosts based on
their IP addresses, start the daemon like this: their IP addresses, start the daemon like this:
+ +
@ -253,7 +253,7 @@ Repositories can still be accessed by hostname though, assuming
they correspond to these IP addresses. they correspond to these IP addresses.


selectively enable/disable services per repository:: selectively enable/disable services per repository::
To enable `git-archive --remote` and disable `git-fetch` against To enable 'git-archive --remote' and disable 'git-fetch' against
a repository, have the following in the configuration file in the a repository, have the following in the configuration file in the
repository (that is the file 'config' next to 'HEAD', 'refs' and repository (that is the file 'config' next to 'HEAD', 'refs' and
'objects'). 'objects').

View File

@ -92,7 +92,7 @@ of commits which would be displayed by "git log v1.0.4..parent".
The hash suffix is "-g" + 7-char abbreviation for the tip commit The hash suffix is "-g" + 7-char abbreviation for the tip commit
of parent (which was `2414721b194453f058079d897d13c4e377f92dc6`). of parent (which was `2414721b194453f058079d897d13c4e377f92dc6`).


Doing a `git-describe` on a tag-name will just show the tag name: Doing a 'git-describe' on a tag-name will just show the tag name:


[torvalds@g5 git]$ git describe v1.0.4 [torvalds@g5 git]$ git describe v1.0.4
v1.0.4 v1.0.4
@ -115,13 +115,13 @@ closest tagname without any suffix:
SEARCH STRATEGY SEARCH STRATEGY
--------------- ---------------


For each committish supplied, `git-describe` will first look for For each committish supplied, 'git-describe' will first look for
a tag which tags exactly that commit. Annotated tags will always a tag which tags exactly that commit. Annotated tags will always
be preferred over lightweight tags, and tags with newer dates will be preferred over lightweight tags, and tags with newer dates will
always be preferred over tags with older dates. If an exact match always be preferred over tags with older dates. If an exact match
is found, its name will be output and searching will stop. is found, its name will be output and searching will stop.


If an exact match was not found, `git-describe` will walk back If an exact match was not found, 'git-describe' will walk back
through the commit history to locate an ancestor commit which through the commit history to locate an ancestor commit which
has been tagged. The ancestor's tag will be output along with an has been tagged. The ancestor's tag will be output along with an
abbreviation of the input committish's SHA1. abbreviation of the input committish's SHA1.

View File

@ -15,7 +15,7 @@ DESCRIPTION
Compares the files in the working tree and the index. When paths Compares the files in the working tree and the index. When paths
are specified, compares only those named paths. Otherwise all are specified, compares only those named paths. Otherwise all
entries in the index are compared. The output format is the entries in the index are compared. The output format is the
same as for `git-diff-index` and `git-diff-tree`. same as for 'git-diff-index' and 'git-diff-tree'.


OPTIONS OPTIONS
------- -------

View File

@ -31,7 +31,7 @@ include::diff-options.txt[]
-m:: -m::
By default, files recorded in the index but not checked By default, files recorded in the index but not checked
out are reported as deleted. This flag makes out are reported as deleted. This flag makes
`git-diff-index` say that all non-checked-out files are up 'git-diff-index' say that all non-checked-out files are up
to date. to date.


Output format Output format
@ -50,7 +50,7 @@ Cached Mode
If '--cached' is specified, it allows you to ask: If '--cached' is specified, it allows you to ask:


show me the differences between HEAD and the current index show me the differences between HEAD and the current index
contents (the ones I'd write using `git-write-tree`) contents (the ones I'd write using 'git-write-tree')


For example, let's say that you have worked on your working directory, updated For example, let's say that you have worked on your working directory, updated
some files in the index and are ready to commit. You want to see exactly some files in the index and are ready to commit. You want to see exactly
@ -62,7 +62,7 @@ object and compare it that way, and to do that, you just do
Example: let's say I had renamed `commit.c` to `git-commit.c`, and I had Example: let's say I had renamed `commit.c` to `git-commit.c`, and I had
done an `update-index` to make that effective in the index file. done an `update-index` to make that effective in the index file.
`git diff-files` wouldn't show anything at all, since the index file `git diff-files` wouldn't show anything at all, since the index file
matches my working directory. But doing a `git-diff-index` does: matches my working directory. But doing a 'git-diff-index' does:


torvalds@ppc970:~/git> git diff-index --cached HEAD torvalds@ppc970:~/git> git diff-index --cached HEAD
-100644 blob 4161aecc6700a2eb579e842af0b7f22b98443f74 commit.c -100644 blob 4161aecc6700a2eb579e842af0b7f22b98443f74 commit.c
@ -71,10 +71,10 @@ matches my working directory. But doing a `git-diff-index` does:
You can see easily that the above is a rename. You can see easily that the above is a rename.


In fact, `git diff-index --cached` *should* always be entirely equivalent to In fact, `git diff-index --cached` *should* always be entirely equivalent to
actually doing a `git-write-tree` and comparing that. Except this one is much actually doing a 'git-write-tree' and comparing that. Except this one is much
nicer for the case where you just want to check where you are. nicer for the case where you just want to check where you are.


So doing a `git-diff-index --cached` is basically very useful when you are 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 asking yourself "what have I already marked for being committed, and
what's the difference to a previous tree". what's the difference to a previous tree".


@ -82,20 +82,20 @@ Non-cached Mode
--------------- ---------------
The "non-cached" mode takes a different approach, and is potentially 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 the more useful of the two in that what it does can't be emulated with
a `git-write-tree` + `git-diff-tree`. Thus that's the default mode. a 'git-write-tree' + 'git-diff-tree'. Thus that's the default mode.
The non-cached version asks the question: The non-cached version asks the question:


show me the differences between HEAD and the currently checked out show me the differences between HEAD and the currently checked out
tree - index contents _and_ files that aren't up-to-date tree - index contents _and_ files that aren't up-to-date


which is obviously a very useful question too, since that tells you what which is obviously a very useful question too, since that tells you what
you *could* commit. Again, the output matches the `git-diff-tree -r` you *could* commit. Again, the output matches the 'git-diff-tree -r'
output to a tee, but with a twist. output to a tee, but with a twist.


The twist is that if some file doesn't match the index, we don't have The twist is that if some file doesn't match the index, we don't have
a backing store thing for it, and we use the magic "all-zero" sha1 to a backing store thing for it, and we use the magic "all-zero" sha1 to
show that. So let's say that you have edited `kernel/sched.c`, but show that. So let's say that you have edited `kernel/sched.c`, but
have not actually done a `git-update-index` on it yet - there is no have not actually done a 'git-update-index' on it yet - there is no
"object" associated with the new state, and you get: "object" associated with the new state, and you get:


torvalds@ppc970:~/v2.6/linux> git diff-index HEAD torvalds@ppc970:~/v2.6/linux> git diff-index HEAD
@ -106,11 +106,11 @@ not up-to-date and may contain new stuff. The all-zero sha1 means that to
get the real diff, you need to look at the object in the working directory get the real diff, you need to look at the object in the working directory
directly rather than do an object-to-object diff. directly rather than do an object-to-object diff.


NOTE: As with other commands of this type, `git-diff-index` does not NOTE: As with other commands of this type, 'git-diff-index' does not
actually look at the contents of the file at all. So maybe actually look at the contents of the file at all. So maybe
`kernel/sched.c` hasn't actually changed, and it's just that you `kernel/sched.c` hasn't actually changed, and it's just that you
touched it. In either case, it's a note that you need to touched it. In either case, it's a note that you need to
`git-update-index` it to make the index be in sync. 'git-update-index' it to make the index be in sync.


NOTE: You can have a mixture of files show up as "has been updated" NOTE: You can have a mixture of files show up as "has been updated"
and "is still dirty in the working directory" together. You can always and "is still dirty in the working directory" together. You can always

View File

@ -20,7 +20,7 @@ Compares the content and mode of the blobs found via two tree objects.
If there is only one <tree-ish> given, the commit is compared with its parents If there is only one <tree-ish> given, the commit is compared with its parents
(see --stdin below). (see --stdin below).


Note that `git-diff-tree` can use the tree encapsulated in a commit object. Note that 'git-diff-tree' can use the tree encapsulated in a commit object.


OPTIONS OPTIONS
------- -------
@ -58,25 +58,25 @@ behavior. This does not apply to the case where two <tree-ish>
separated with a single space are given. separated with a single space are given.


-m:: -m::
By default, `git-diff-tree --stdin` does not show By default, 'git-diff-tree --stdin' does not show
differences for merge commits. With this flag, it shows differences for merge commits. With this flag, it shows
differences to that commit from all of its parents. See differences to that commit from all of its parents. See
also '-c'. also '-c'.


-s:: -s::
By default, `git-diff-tree --stdin` shows differences, By default, 'git-diff-tree --stdin' shows differences,
either in machine-readable form (without '-p') or in patch either in machine-readable form (without '-p') or in patch
form (with '-p'). This output can be suppressed. It is form (with '-p'). This output can be suppressed. It is
only useful with '-v' flag. only useful with '-v' flag.


-v:: -v::
This flag causes `git-diff-tree --stdin` to also show This flag causes 'git-diff-tree --stdin' to also show
the commit message before the differences. the commit message before the differences.


include::pretty-options.txt[] include::pretty-options.txt[]


--no-commit-id:: --no-commit-id::
`git-diff-tree` outputs a line with the commit ID when 'git-diff-tree' outputs a line with the commit ID when
applicable. This flag suppressed the commit ID output. applicable. This flag suppressed the commit ID output.


-c:: -c::

View File

@ -13,18 +13,18 @@ SYNOPSIS
DESCRIPTION DESCRIPTION
----------- -----------
This program dumps the given revisions in a form suitable to be piped This program dumps the given revisions in a form suitable to be piped
into `git-fast-import`. into 'git-fast-import'.


You can use it as a human readable bundle replacement (see You can use it as a human readable bundle replacement (see
linkgit:git-bundle[1]), or as a kind of an interactive linkgit:git-bundle[1]), or as a kind of an interactive
`git-filter-branch`. 'git-filter-branch'.




OPTIONS OPTIONS
------- -------
--progress=<n>:: --progress=<n>::
Insert 'progress' statements every <n> objects, to be shown by Insert 'progress' statements every <n> objects, to be shown by
`git-fast-import` during import. 'git-fast-import' during import.


--signed-tags=(verbatim|warn|strip|abort):: --signed-tags=(verbatim|warn|strip|abort)::
Specify how to handle signed tags. Since any transformation Specify how to handle signed tags. Since any transformation
@ -85,7 +85,7 @@ referenced by that revision range contains the string
Limitations Limitations
----------- -----------


Since `git-fast-import` cannot tag trees, you will not be Since 'git-fast-import' cannot tag trees, you will not be
able to export the linux-2.6.git repository completely, as it contains able to export the linux-2.6.git repository completely, as it contains
a tag referencing a tree instead of a commit. a tag referencing a tree instead of a commit.



View File

@ -15,7 +15,7 @@ DESCRIPTION
This program is usually not what the end user wants to run directly. This program is usually not what the end user wants to run directly.
Most end users want to use one of the existing frontend programs, Most end users want to use one of the existing frontend programs,
which parses a specific type of foreign source and feeds the contents which parses a specific type of foreign source and feeds the contents
stored there to `git-fast-import`. stored there to 'git-fast-import'.


fast-import reads a mixed command/data stream from standard input and fast-import reads a mixed command/data stream from standard input and
writes one or more packfiles directly into the current repository. writes one or more packfiles directly into the current repository.
@ -24,7 +24,7 @@ updated branch and tag refs, fully updating the current repository
with the newly imported data. with the newly imported data.


The fast-import backend itself can import into an empty repository (one that The fast-import backend itself can import into an empty repository (one that
has already been initialized by `git-init`) or incrementally has already been initialized by 'git-init') or incrementally
update an existing populated repository. Whether or not incremental update an existing populated repository. Whether or not incremental
imports are supported from a particular foreign source depends on imports are supported from a particular foreign source depends on
the frontend program in use. the frontend program in use.
@ -82,7 +82,7 @@ OPTIONS
This information may be useful after importing projects This information may be useful after importing projects
whose total object set exceeds the 4 GiB packfile limit, whose total object set exceeds the 4 GiB packfile limit,
as these commits can be used as edge points during calls as these commits can be used as edge points during calls
to `git-pack-objects`. to 'git-pack-objects'.


--quiet:: --quiet::
Disable all non-fatal output, making fast-import silent when it Disable all non-fatal output, making fast-import silent when it
@ -124,9 +124,9 @@ an ideal situation, given that most conversion tools are throw-away


Parallel Operation Parallel Operation
------------------ ------------------
Like `git-push` or `git-fetch`, imports handled by fast-import are safe to 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, run alongside parallel `git repack -a -d` or `git gc` invocations,
or any other Git operation (including `git-prune`, as loose objects or any other Git operation (including 'git-prune', as loose objects
are never used by fast-import). are never used by fast-import).


fast-import does not lock the branch or tag refs it is actively importing. fast-import does not lock the branch or tag refs it is actively importing.
@ -220,7 +220,7 @@ variation in formatting will cause fast-import to reject the value.
+ +
An example value is ``Tue Feb 6 11:22:18 2007 -0500''. The Git An example value is ``Tue Feb 6 11:22:18 2007 -0500''. The Git
parser is accurate, but a little on the lenient side. It is the parser is accurate, but a little on the lenient side. It is the
same parser used by `git-am` when applying patches same parser used by 'git-am' when applying patches
received from email. received from email.
+ +
Some malformed strings may be accepted as valid dates. In some of Some malformed strings may be accepted as valid dates. In some of
@ -256,7 +256,7 @@ timezone.
This particular format is supplied as its short to implement and This particular format is supplied as its short to implement and
may be useful to a process that wants to create a new commit may be useful to a process that wants to create a new commit
right now, without needing to use a working directory or right now, without needing to use a working directory or
`git-update-index`. 'git-update-index'.
+ +
If separate `author` and `committer` commands are used in a `commit` If separate `author` and `committer` commands are used in a `commit`
the timestamps may not match, as the system clock will be polled the timestamps may not match, as the system clock will be polled
@ -654,7 +654,7 @@ recommended, as the frontend does not (easily) have access to the
complete set of bytes which normally goes into such a signature. complete set of bytes which normally goes into such a signature.
If signing is required, create lightweight tags from within fast-import with If signing is required, create lightweight tags from within fast-import with
`reset`, then create the annotated versions of those tags offline `reset`, then create the annotated versions of those tags offline
with the standard `git-tag` process. with the standard 'git-tag' process.


`reset` `reset`
~~~~~~~ ~~~~~~~
@ -955,7 +955,7 @@ is not `refs/heads/TAG_FIXUP`).


When committing fixups, consider using `merge` to connect the When committing fixups, consider using `merge` to connect the
commit(s) which are supplying file revisions to the fixup branch. commit(s) which are supplying file revisions to the fixup branch.
Doing so will allow tools such as `git-blame` to track Doing so will allow tools such as 'git-blame' to track
through the real commit history and properly annotate the source through the real commit history and properly annotate the source
files. files.


@ -984,7 +984,7 @@ Repacking Historical Data
~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~
If you are repacking very old imported data (e.g. older than the If you are repacking very old imported data (e.g. older than the
last year), consider expending some extra CPU time and supplying last year), consider expending some extra CPU time and supplying
\--window=50 (or higher) when you run `git-repack`. \--window=50 (or higher) when you run 'git-repack'.
This will take longer, but will also produce a smaller packfile. This will take longer, but will also produce a smaller packfile.
You only need to expend the effort once, and everyone using your You only need to expend the effort once, and everyone using your
project will benefit from the smaller repository. project will benefit from the smaller repository.

View File

@ -12,14 +12,14 @@ SYNOPSIS


DESCRIPTION DESCRIPTION
----------- -----------
Usually you would want to use `git-fetch`, which is a Usually you would want to use 'git-fetch', which is a
higher level wrapper of this command, instead. higher level wrapper of this command, instead.


Invokes `git-upload-pack` on a possibly remote repository Invokes 'git-upload-pack' on a possibly remote repository
and asks it to send objects missing from this repository, to and asks it to send objects missing from this repository, to
update the named heads. The list of commits available locally update the named heads. The list of commits available locally
is found out by scanning local $GIT_DIR/refs/ and sent to is found out by scanning local $GIT_DIR/refs/ and sent to
`git-upload-pack` running on the other end. 'git-upload-pack' running on the other end.


This command degenerates to download everything to complete the This command degenerates to download everything to complete the
asked refs from the remote side when the local side does not asked refs from the remote side when the local side does not
@ -33,12 +33,12 @@ OPTIONS


-q:: -q::
--quiet:: --quiet::
Pass '-q' flag to `git-unpack-objects`; this makes the Pass '-q' flag to 'git-unpack-objects'; this makes the
cloning process less verbose. cloning process less verbose.


-k:: -k::
--keep:: --keep::
Do not invoke `git-unpack-objects` on received data, but Do not invoke 'git-unpack-objects' on received data, but
create a single packfile out of it instead, and store it create a single packfile out of it instead, and store it
in the object database. If provided twice then the pack is in the object database. If provided twice then the pack is
locked against repacking. locked against repacking.
@ -54,7 +54,7 @@ OPTIONS
otherwise determine the tags this option made available. otherwise determine the tags this option made available.


--upload-pack=<git-upload-pack>:: --upload-pack=<git-upload-pack>::
Use this to specify the path to `git-upload-pack` on the Use this to specify the path to 'git-upload-pack' on the
remote side, if is not found on your $PATH. remote side, if is not found on your $PATH.
Installations of sshd ignores the user's environment Installations of sshd ignores the user's environment
setup scripts for login shells (e.g. .bash_profile) and setup scripts for login shells (e.g. .bash_profile) and
@ -79,7 +79,7 @@ OPTIONS


<host>:: <host>::
A remote host that houses the repository. When this A remote host that houses the repository. When this
part is specified, `git-upload-pack` is invoked via part is specified, 'git-upload-pack' is invoked via
ssh. ssh.


<directory>:: <directory>::

View File

@ -18,7 +18,7 @@ the objects necessary to complete them.


The ref names and their object names of fetched refs are stored The ref names and their object names of fetched refs are stored
in `.git/FETCH_HEAD`. This information is left for a later merge in `.git/FETCH_HEAD`. This information is left for a later merge
operation done by `git-merge`. operation done by 'git-merge'.


When <refspec> stores the fetched result in tracking branches, When <refspec> stores the fetched result in tracking branches,
the tags that point at these branches are automatically the tags that point at these branches are automatically

View File

@ -108,7 +108,7 @@ OPTIONS
--commit-filter <command>:: --commit-filter <command>::
This is the filter for performing the commit. This is the filter for performing the commit.
If this filter is specified, it will be called instead of the If this filter is specified, it will be called instead of the
`git-commit-tree` command, with arguments of the form 'git-commit-tree' command, with arguments of the form
"<TREE_ID> [-p <PARENT_COMMIT_ID>]..." and the log message on "<TREE_ID> [-p <PARENT_COMMIT_ID>]..." and the log message on
stdin. The commit id is expected on stdout. stdin. The commit id is expected on stdout.
+ +
@ -119,7 +119,7 @@ have all of them as parents.
You can use the 'map' convenience function in this filter, and other You can use the 'map' convenience function in this filter, and other
convenience functions, too. For example, calling 'skip_commit "$@"' convenience functions, too. For example, calling 'skip_commit "$@"'
will leave out the current commit (but not its changes! If you want will leave out the current commit (but not its changes! If you want
that, use `git-rebase` instead). that, use 'git-rebase' instead).


--tag-name-filter <command>:: --tag-name-filter <command>::
This is the filter for rewriting tag names. When passed, This is the filter for rewriting tag names. When passed,
@ -163,13 +163,13 @@ to other tags will be rewritten to point to the underlying commit.


-f:: -f::
--force:: --force::
`git-filter-branch` refuses to start with an existing temporary 'git-filter-branch' refuses to start with an existing temporary
directory or when there are already refs starting with directory or when there are already refs starting with
'refs/original/', unless forced. 'refs/original/', unless forced.


<rev-list-options>:: <rev-list-options>::
When options are given after the new branch name, they will When options are given after the new branch name, they will
be passed to `git-rev-list`. Only commits in the resulting be passed to 'git-rev-list'. Only commits in the resulting
output will be filtered, although the filtered commits can still output will be filtered, although the filtered commits can still
reference parents which are outside of that set. reference parents which are outside of that set.


@ -255,7 +255,7 @@ and all children of the merge will become merge commits with P1,P2
as their parents instead of the merge commit. as their parents instead of the merge commit.


You can rewrite the commit log messages using `--msg-filter`. For You can rewrite the commit log messages using `--msg-filter`. For
example, `git-svn-id` strings in a repository created by `git-svn` can example, 'git-svn-id' strings in a repository created by 'git-svn' can
be removed this way: be removed this way:


------------------------------------------------------- -------------------------------------------------------
@ -266,13 +266,13 @@ git filter-branch --msg-filter '


To restrict rewriting to only part of the history, specify a revision To restrict rewriting to only part of the history, specify a revision
range in addition to the new branch name. The new branch name will range in addition to the new branch name. The new branch name will
point to the top-most revision that a `git-rev-list` of this range point to the top-most revision that a 'git-rev-list' of this range
will print. will print.


*NOTE* the changes introduced by the commits, and which are not reverted *NOTE* the changes introduced by the commits, and which are not reverted
by subsequent commits, will still be in the rewritten branch. If you want by subsequent commits, will still be in the rewritten branch. If you want
to throw out _changes_ together with the commits, you should use the to throw out _changes_ together with the commits, you should use the
interactive mode of `git-rebase`. interactive mode of 'git-rebase'.




Consider this history: Consider this history:

View File

@ -16,10 +16,10 @@ DESCRIPTION
----------- -----------
Takes the list of merged objects on stdin and produces a suitable Takes the list of merged objects on stdin and produces a suitable
commit message to be used for the merge commit, usually to be commit message to be used for the merge commit, usually to be
passed as the '<merge-message>' argument of `git-merge`. passed as the '<merge-message>' argument of 'git-merge'.


This script is intended mostly for internal use by scripts This script is intended mostly for internal use by scripts
automatically invoking `git-merge`. automatically invoking 'git-merge'.


OPTIONS OPTIONS
------- -------

View File

@ -79,7 +79,7 @@ objecttype::
The type of the object (`blob`, `tree`, `commit`, `tag`). The type of the object (`blob`, `tree`, `commit`, `tag`).


objectsize:: objectsize::
The size of the object (the same as `git-cat-file -s` reports). The size of the object (the same as 'git-cat-file -s' reports).


objectname:: objectname::
The object name (aka SHA-1). The object name (aka SHA-1).

View File

@ -27,7 +27,7 @@ DESCRIPTION
Prepare each commit with its patch in Prepare each commit with its patch in
one file per commit, formatted to resemble UNIX mailbox format. one file per commit, formatted to resemble UNIX mailbox format.
The output of this command is convenient for e-mail submission or The output of this command is convenient for e-mail submission or
for use with `git-am`. for use with 'git-am'.


There are two ways to specify which commits to operate on. There are two ways to specify which commits to operate on.


@ -61,7 +61,7 @@ they are created in the current working directory.
If -n is specified, instead of "[PATCH] Subject", the first line If -n is specified, instead of "[PATCH] Subject", the first line
is formatted as "[PATCH n/m] Subject". is formatted as "[PATCH n/m] Subject".


If given --thread, `git-format-patch` will generate In-Reply-To and If given --thread, 'git-format-patch' will generate In-Reply-To and
References headers to make the second and subsequent patch mails appear References headers to make the second and subsequent patch mails appear
as replies to the first mail; this also generates a Message-Id header to as replies to the first mail; this also generates a Message-Id header to
reference. reference.
@ -187,7 +187,7 @@ EXAMPLES
-------- --------


* Extract commits between revisions R1 and R2, and apply them on top of * Extract commits between revisions R1 and R2, and apply them on top of
the current branch using `git-am` to cherry-pick them: the current branch using 'git-am' to cherry-pick them:
+ +
------------ ------------
$ git format-patch -k --stdout R1..R2 | git am -3 -k $ git format-patch -k --stdout R1..R2 | git am -3 -k

View File

@ -21,7 +21,7 @@ OPTIONS
<object>:: <object>::
An object to treat as the head of an unreachability trace. An object to treat as the head of an unreachability trace.
+ +
If no objects are given, `git-fsck` defaults to using the If no objects are given, 'git-fsck' defaults to using the
index file, all SHA1 references in .git/refs/*, and all reflogs (unless index file, all SHA1 references in .git/refs/*, and all reflogs (unless
--no-reflogs is given) as heads. --no-reflogs is given) as heads.


@ -83,7 +83,7 @@ So for example


will do quite a _lot_ of verification on the tree. There are a few will do quite a _lot_ of verification on the tree. There are a few
extra validity tests to be added (make sure that tree objects are extra validity tests to be added (make sure that tree objects are
sorted properly etc), but on the whole if `git-fsck` is happy, you sorted properly etc), but on the whole if 'git-fsck' is happy, you
do have a valid tree. do have a valid tree.


Any corrupt objects you will have to find in backups or other archives Any corrupt objects you will have to find in backups or other archives

View File

@ -15,13 +15,13 @@ DESCRIPTION
Runs a number of housekeeping tasks within the current repository, Runs a number of housekeeping tasks within the current repository,
such as compressing file revisions (to reduce disk space and increase such as compressing file revisions (to reduce disk space and increase
performance) and removing unreachable objects which may have been performance) and removing unreachable objects which may have been
created from prior invocations of `git-add`. created from prior invocations of 'git-add'.


Users are encouraged to run this task on a regular basis within Users are encouraged to run this task on a regular basis within
each repository to maintain good disk space utilization and good each repository to maintain good disk space utilization and good
operating performance. operating performance.


Some git commands may automatically run `git-gc`; see the `--auto` flag Some git commands may automatically run 'git-gc'; see the `--auto` flag
below for details. If you know what you're doing and all you want is to below for details. If you know what you're doing and all you want is to
disable this behavior permanently without further considerations, just do: disable this behavior permanently without further considerations, just do:


@ -33,15 +33,15 @@ OPTIONS
------- -------


--aggressive:: --aggressive::
Usually `git-gc` runs very quickly while providing good disk Usually 'git-gc' runs very quickly while providing good disk
space utilization and performance. This option will cause space utilization and performance. This option will cause
`git-gc` to more aggressively optimize the repository at the expense 'git-gc' to more aggressively optimize the repository at the expense
of taking much more time. The effects of this optimization are of taking much more time. The effects of this optimization are
persistent, so this option only needs to be used occasionally; every persistent, so this option only needs to be used occasionally; every
few hundred changesets or so. few hundred changesets or so.


--auto:: --auto::
With this option, `git-gc` checks whether any housekeeping is With this option, 'git-gc' checks whether any housekeeping is
required; if not, it exits without performing any work. required; if not, it exits without performing any work.
Some git commands run `git gc --auto` after performing Some git commands run `git gc --auto` after performing
operations that could create many loose objects. operations that could create many loose objects.
@ -50,13 +50,13 @@ Housekeeping is required if there are too many loose objects or
too many packs in the repository. If the number of loose objects too many packs in the repository. If the number of loose objects
exceeds the value of the `gc.auto` configuration variable, then exceeds the value of the `gc.auto` configuration variable, then
all loose objects are combined into a single pack using all loose objects are combined into a single pack using
`git-repack -d -l`. Setting the value of `gc.auto` to 0 'git-repack -d -l'. Setting the value of `gc.auto` to 0
disables automatic packing of loose objects. disables automatic packing of loose objects.
+ +
If the number of packs exceeds the value of `gc.autopacklimit`, If the number of packs exceeds the value of `gc.autopacklimit`,
then existing packs (except those marked with a `.keep` file) then existing packs (except those marked with a `.keep` file)
are consolidated into a single pack by using the `-A` option of are consolidated into a single pack by using the `-A` option of
`git-repack`. Setting `gc.autopacklimit` to 0 disables 'git-repack'. Setting `gc.autopacklimit` to 0 disables
automatic consolidation of packs. automatic consolidation of packs.


--quiet:: --quiet::
@ -89,7 +89,7 @@ how long records of conflicted merge you have not resolved are
kept. This defaults to 15 days. kept. This defaults to 15 days.


The optional configuration variable 'gc.packrefs' determines if The optional configuration variable 'gc.packrefs' determines if
`git-gc` runs `git-pack-refs`. This can be set to "nobare" to enable 'git-gc' runs 'git-pack-refs'. This can be set to "nobare" to enable
it within all non-bare repos or it can be set to a boolean value. it within all non-bare repos or it can be set to a boolean value.
This defaults to true. This defaults to true.


@ -108,10 +108,10 @@ default is "2 weeks ago".
Notes Notes
----- -----


`git-gc` tries very hard to be safe about the garbage it collects. In 'git-gc' tries very hard to be safe about the garbage it collects. In
particular, it will keep not only objects referenced by your current set particular, it will keep not only objects referenced by your current set
of branches and tags, but also objects referenced by the index, remote of branches and tags, but also objects referenced by the index, remote
tracking branches, refs saved by `git-filter-branch` in tracking branches, refs saved by 'git-filter-branch' in
refs/original/, or reflogs (which may references commits in branches refs/original/, or reflogs (which may references commits in branches
that were later amended or rewound). that were later amended or rewound).



View File

@ -14,12 +14,12 @@ SYNOPSIS
DESCRIPTION DESCRIPTION
----------- -----------
Acts as a filter, extracting the commit ID stored in archives created by Acts as a filter, extracting the commit ID stored in archives created by
`git-archive`. It reads only the first 1024 bytes of input, thus its 'git-archive'. It reads only the first 1024 bytes of input, thus its
runtime is not influenced by the size of <tarfile> very much. runtime is not influenced by the size of <tarfile> very much.


If no commit ID is found, `git-get-tar-commit-id` quietly exists with a If no commit ID is found, 'git-get-tar-commit-id' quietly exists with a
return code of 1. This can happen if <tarfile> had not been created return code of 1. This can happen if <tarfile> had not been created
using `git-archive` or if the first parameter of `git-archive` had been using 'git-archive' or if the first parameter of 'git-archive' had been
a tree ID instead of a commit ID or tag. a tree ID instead of a commit ID or tag.





View File

@ -91,7 +91,7 @@ OPTIONS
--files-without-match:: --files-without-match::
Instead of showing every matched line, show only the Instead of showing every matched line, show only the
names of files that contain (or do not contain) matches. names of files that contain (or do not contain) matches.
For better compatibility with `git-diff`, --name-only is a For better compatibility with 'git-diff', --name-only is a
synonym for --files-with-matches. synonym for --files-with-matches.


-c:: -c::

View File

@ -11,19 +11,19 @@ SYNOPSIS


DESCRIPTION DESCRIPTION
----------- -----------
A Tcl/Tk based graphical user interface to Git. `git-gui` focuses A Tcl/Tk based graphical user interface to Git. 'git-gui' focuses
on allowing users to make changes to their repository by making on allowing users to make changes to their repository by making
new commits, amending existing ones, creating branches, performing new commits, amending existing ones, creating branches, performing
local merges, and fetching/pushing to remote repositories. local merges, and fetching/pushing to remote repositories.


Unlike `gitk`, `git-gui` focuses on commit generation Unlike `gitk`, 'git-gui' focuses on commit generation
and single file annotation and does not show project history. and single file annotation and does not show project history.
It does however supply menu actions to start a `gitk` session from It does however supply menu actions to start a `gitk` session from
within `git-gui`. within 'git-gui'.


`git-gui` is known to work on all popular UNIX systems, Mac OS X, 'git-gui' is known to work on all popular UNIX systems, Mac OS X,
and Windows (under both Cygwin and MSYS). To the extent possible and Windows (under both Cygwin and MSYS). To the extent possible
OS specific user interface guidelines are followed, making `git-gui` OS specific user interface guidelines are followed, making 'git-gui'
a fairly native interface for users. a fairly native interface for users.


COMMANDS COMMANDS
@ -38,13 +38,13 @@ browser::
browser are opened in the blame viewer. browser are opened in the blame viewer.


citool:: citool::
Start `git-gui` and arrange to make exactly one commit before Start 'git-gui' and arrange to make exactly one commit before
exiting and returning to the shell. The interface is limited exiting and returning to the shell. The interface is limited
to only commit actions, slightly reducing the application's to only commit actions, slightly reducing the application's
startup time and simplifying the menubar. startup time and simplifying the menubar.


version:: version::
Display the currently running version of `git-gui`. Display the currently running version of 'git-gui'.




Examples Examples
@ -84,15 +84,15 @@ SEE ALSO
linkgit:gitk[1]:: linkgit:gitk[1]::
The git repository browser. Shows branches, commit history The git repository browser. Shows branches, commit history
and file differences. gitk is the utility started by and file differences. gitk is the utility started by
`git-gui`'s Repository Visualize actions. 'git-gui''s Repository Visualize actions.


Other Other
----- -----
`git-gui` is actually maintained as an independent project, but stable 'git-gui' is actually maintained as an independent project, but stable
versions are distributed as part of the Git suite for the convenience versions are distributed as part of the Git suite for the convenience
of end users. of end users.


A `git-gui` development repository can be obtained from: A 'git-gui' development repository can be obtained from:


git clone git://repo.or.cz/git-gui.git git clone git://repo.or.cz/git-gui.git



View File

@ -16,7 +16,7 @@ Computes the object ID value for an object with specified type
with the contents of the named file (which can be outside of the with the contents of the named file (which can be outside of the
work tree), and optionally writes the resulting object into the work tree), and optionally writes the resulting object into the
object database. Reports its object ID to its standard output. object database. Reports its object ID to its standard output.
This is used by `git-cvsimport` to update the index This is used by 'git-cvsimport' to update the index
without modifying files in the work tree. When <type> is not without modifying files in the work tree. When <type> is not
specified, it defaults to "blob". specified, it defaults to "blob".



View File

@ -55,8 +55,8 @@ other display programs (see below).
+ +
The web browser can be specified using the configuration variable The web browser can be specified using the configuration variable
'help.browser', or 'web.browser' if the former is not set. If none of 'help.browser', or 'web.browser' if the former is not set. If none of
these config variables is set, the `git-web--browse` helper script these config variables is set, the 'git-web--browse' helper script
(called by `git-help`) will pick a suitable default. See (called by 'git-help') will pick a suitable default. See
linkgit:git-web--browse[1] for more information about this. linkgit:git-web--browse[1] for more information about this.


CONFIGURATION VARIABLES CONFIGURATION VARIABLES
@ -67,7 +67,7 @@ help.format


If no command line option is passed, the 'help.format' configuration If no command line option is passed, the 'help.format' configuration
variable will be checked. The following values are supported for this variable will be checked. The following values are supported for this
variable; they make `git-help` behave as their corresponding command variable; they make 'git-help' behave as their corresponding command
line option: line option:


* "man" corresponds to '-m|--man', * "man" corresponds to '-m|--man',

View File

@ -35,7 +35,7 @@ commit-id::


--stdin:: --stdin::
Instead of a commit id on the command line (which is not expected in this Instead of a commit id on the command line (which is not expected in this
case), `git-http-fetch` expects lines on stdin in the format case), 'git-http-fetch' expects lines on stdin in the format


<commit-id>['\t'<filename-as-in--w>] <commit-id>['\t'<filename-as-in--w>]



View File

@ -26,7 +26,7 @@ git format-patch --signoff --stdout --attach origin | git imap-send
CONFIGURATION CONFIGURATION
------------- -------------


`git-imap-send` requires the following values in the repository 'git-imap-send' requires the following values in the repository
configuration file (shown with examples): configuration file (shown with examples):


.......................... ..........................

View File

@ -43,10 +43,10 @@ OPTIONS
a default name determined from the pack content. If a default name determined from the pack content. If
<pack-file> is not specified consider using --keep to <pack-file> is not specified consider using --keep to
prevent a race condition between this process and prevent a race condition between this process and
`git-repack`. 'git-repack'.


--fix-thin:: --fix-thin::
It is possible for `git-pack-objects` to build It is possible for 'git-pack-objects' to build
"thin" pack, which records objects in deltified form based on "thin" pack, which records objects in deltified form based on
objects not included in the pack to reduce network traffic. objects not included in the pack to reduce network traffic.
Those objects are expected to be present on the receiving end Those objects are expected to be present on the receiving end
@ -59,7 +59,7 @@ OPTIONS
Before moving the index into its final destination Before moving the index into its final destination
create an empty .keep file for the associated pack file. create an empty .keep file for the associated pack file.
This option is usually necessary with --stdin to prevent a This option is usually necessary with --stdin to prevent a
simultaneous `git-repack` process from deleting simultaneous 'git-repack' process from deleting
the newly constructed pack and index before refs can be the newly constructed pack and index before refs can be
updated to use objects contained in the pack. updated to use objects contained in the pack.


@ -86,7 +86,7 @@ Once the index has been created, the list of object names is sorted
and the SHA1 hash of that list is printed to stdout. If --stdin was and the SHA1 hash of that list is printed to stdout. If --stdin was
also used then this is prefixed by either "pack\t", or "keep\t" if a also used then this is prefixed by either "pack\t", or "keep\t" if a
new .keep file was successfully created. This is useful to remove a new .keep file was successfully created. This is useful to remove a
.keep file used as a lock to prevent the race with `git-repack` .keep file used as a lock to prevent the race with 'git-repack'
mentioned above. mentioned above.





View File

@ -86,11 +86,11 @@ If the object storage directory is specified via the `$GIT_OBJECT_DIRECTORY`
environment variable then the sha1 directories are created underneath - environment variable then the sha1 directories are created underneath -
otherwise the default `$GIT_DIR/objects` directory is used. otherwise the default `$GIT_DIR/objects` directory is used.


Running `git-init` in an existing repository is safe. It will not overwrite Running 'git-init' in an existing repository is safe. It will not overwrite
things that are already there. The primary reason for rerunning `git-init` things that are already there. The primary reason for rerunning 'git-init'
is to pick up newly added templates. is to pick up newly added templates.


Note that `git-init` is the same as `git-init-db`. The command Note that 'git-init' is the same as 'git-init-db'. The command
was primarily meant to initialize the object database, but over was primarily meant to initialize the object database, but over
time it has become responsible for setting up the other aspects time it has become responsible for setting up the other aspects
of the repository, such as installing the default hooks and of the repository, such as installing the default hooks and

View File

@ -44,7 +44,7 @@ OPTIONS
-b:: -b::
--browser:: --browser::
The web browser that should be used to view the gitweb The web browser that should be used to view the gitweb
page. This will be passed to the `git-web--browse` helper page. This will be passed to the 'git-web--browse' helper
script along with the URL of the gitweb instance. See script along with the URL of the gitweb instance. See
linkgit:git-web--browse[1] for more information about this. If linkgit:git-web--browse[1] for more information about this. If
the script fails, the URL will be printed to stdout. the script fails, the URL will be printed to stdout.

View File

@ -14,9 +14,9 @@ DESCRIPTION
----------- -----------
Shows the commit logs. Shows the commit logs.


The command takes options applicable to the `git-rev-list` The command takes options applicable to the 'git-rev-list'
command to control what is shown and how, and options applicable to command to control what is shown and how, and options applicable to
the `git-diff-*` commands to control how the changes the 'git-diff-*' commands to control how the changes
each commit introduces are shown. each commit introduces are shown.





View File

@ -143,7 +143,7 @@ which case it outputs:


[<tag> ]<mode> <object> <stage> <file> [<tag> ]<mode> <object> <stage> <file>


`git-ls-files --unmerged` and `git-ls-files --stage` can be used to examine 'git-ls-files --unmerged' and 'git-ls-files --stage' can be used to examine
detailed information on unmerged paths. detailed information on unmerged paths.


For an unmerged path, instead of recording a single mode/SHA1 pair, For an unmerged path, instead of recording a single mode/SHA1 pair,
@ -160,7 +160,7 @@ respectively.
Exclude Patterns Exclude Patterns
---------------- ----------------


`git-ls-files` can use a list of "exclude patterns" when 'git-ls-files' can use a list of "exclude patterns" when
traversing the directory tree and finding files to show when the traversing the directory tree and finding files to show when the
flags --others or --ignored are specified. linkgit:gitignore[5] flags --others or --ignored are specified. linkgit:gitignore[5]
specifies the format of exclude patterns. specifies the format of exclude patterns.
@ -176,7 +176,7 @@ These exclude patterns come from these places, in order:
in the same order they appear in the file. in the same order they appear in the file.


3. command line flag --exclude-per-directory=<name> specifies 3. command line flag --exclude-per-directory=<name> specifies
a name of the file in each directory `git-ls-files` a name of the file in each directory 'git-ls-files'
examines, normally `.gitignore`. Files in deeper examines, normally `.gitignore`. Files in deeper
directories take precedence. Patterns are ordered in the directories take precedence. Patterns are ordered in the
same order they appear in the files. same order they appear in the files.

View File

@ -31,7 +31,7 @@ OPTIONS


-u <exec>:: -u <exec>::
--upload-pack=<exec>:: --upload-pack=<exec>::
Specify the full path of `git-upload-pack` on the remote Specify the full path of 'git-upload-pack' on the remote
host. This allows listing references from repositories accessed via host. This allows listing references from repositories accessed via
SSH and where the SSH daemon does not use the PATH configured by the SSH and where the SSH daemon does not use the PATH configured by the
user. user.

View File

@ -16,7 +16,7 @@ DESCRIPTION
Reading a single e-mail message from the standard input, and Reading a single e-mail message from the standard input, and
writes the commit log message in <msg> file, and the patches in writes the commit log message in <msg> file, and the patches in
<patch> file. The author name, e-mail and e-mail subject are <patch> file. The author name, e-mail and e-mail subject are
written out to the standard output to be used by `git-am` written out to the standard output to be used by 'git-am'
to create a commit. It is usually not necessary to use this to create a commit. It is usually not necessary to use this
command directly. See linkgit:git-am[1] instead. command directly. See linkgit:git-am[1] instead.


@ -30,7 +30,7 @@ OPTIONS
whitespaces, (3) '[' up to ']', typically '[PATCH]', and whitespaces, (3) '[' up to ']', typically '[PATCH]', and
then prepends "[PATCH] ". This flag forbids this then prepends "[PATCH] ". This flag forbids this
munging, and is most useful when used to read back munging, and is most useful when used to read back
`git-format-patch -k` output. 'git-format-patch -k' output.


-u:: -u::
The commit log message, author name and author email are The commit log message, author name and author email are

View File

@ -13,7 +13,7 @@ SYNOPSIS
DESCRIPTION DESCRIPTION
----------- -----------


`git-merge-base` finds as good a common ancestor as possible between 'git-merge-base' finds as good a common ancestor as possible between
the two commits. That is, given two commits A and B, `git merge-base A the two commits. That is, given two commits A and B, `git merge-base A
B` will output a commit which is reachable from both A and B through B` will output a commit which is reachable from both A and B through
the parent relationship. the parent relationship.
@ -21,7 +21,7 @@ the parent relationship.
Given a selection of equally good common ancestors it should not be Given a selection of equally good common ancestors it should not be
relied on to decide in any particular way. relied on to decide in any particular way.


The `git-merge-base` algorithm is still in flux - use the source... The 'git-merge-base' algorithm is still in flux - use the source...


OPTIONS OPTIONS
------- -------

View File

@ -15,15 +15,15 @@ SYNOPSIS


DESCRIPTION DESCRIPTION
----------- -----------
`git-file-merge` incorporates all changes that lead from the `<base-file>` 'git-file-merge' incorporates all changes that lead from the `<base-file>`
to `<other-file>` into `<current-file>`. The result ordinarily goes into to `<other-file>` into `<current-file>`. The result ordinarily goes into
`<current-file>`. `git-merge-file` is useful for combining separate changes `<current-file>`. 'git-merge-file' is useful for combining separate changes
to an original. Suppose `<base-file>` is the original, and both to an original. Suppose `<base-file>` is the original, and both
`<current-file>` and `<other-file>` are modifications of `<base-file>`. `<current-file>` and `<other-file>` are modifications of `<base-file>`.
Then `git-merge-file` combines both changes. Then 'git-merge-file' combines both changes.


A conflict occurs if both `<current-file>` and `<other-file>` have changes A conflict occurs if both `<current-file>` and `<other-file>` have changes
in a common segment of lines. If a conflict is found, `git-merge-file` in a common segment of lines. If a conflict is found, 'git-merge-file'
normally outputs a warning and brackets the conflict with <<<<<<< and normally outputs a warning and brackets the conflict with <<<<<<< and
>>>>>>> lines. A typical conflict will look like this: >>>>>>> lines. A typical conflict will look like this:


@ -39,7 +39,7 @@ the alternatives.
The exit value of this program is negative on error, and the number of The exit value of this program is negative on error, and the number of
conflicts otherwise. If the merge was clean, the exit value is 0. conflicts otherwise. If the merge was clean, the exit value is 0.


`git-merge-file` is designed to be a minimal clone of RCS `merge`; that is, it 'git-merge-file' is designed to be a minimal clone of RCS `merge`; that is, it
implements all of RCS merge's functionality which is needed by implements all of RCS merge's functionality which is needed by
linkgit:git[1]. linkgit:git[1].



View File

@ -36,14 +36,14 @@ OPTIONS
failure usually indicates conflicts during merge). This is for failure usually indicates conflicts during merge). This is for
porcelains which might want to emit custom messages. porcelains which might want to emit custom messages.


If `git-merge-index` is called with multiple <file>s (or -a) then it If 'git-merge-index' is called with multiple <file>s (or -a) then it
processes them in turn only stopping if merge returns a non-zero exit processes them in turn only stopping if merge returns a non-zero exit
code. code.


Typically this is run with a script calling git's imitation of Typically this is run with a script calling git's imitation of
the 'merge' command from the RCS package. the 'merge' command from the RCS package.


A sample script called `git-merge-one-file` is included in the A sample script called 'git-merge-one-file' is included in the
distribution. distribution.


ALERT ALERT ALERT! The git "merge object order" is different from the ALERT ALERT ALERT! The git "merge object order" is different from the
@ -68,10 +68,10 @@ or
This is added AA in the branch B. This is added AA in the branch B.
fatal: merge program failed fatal: merge program failed


where the latter example shows how `git-merge-index` will stop trying to where the latter example shows how 'git-merge-index' will stop trying to
merge once anything has returned an error (i.e., `cat` returned an error merge once anything has returned an error (i.e., `cat` returned an error
for the AA file, because it didn't exist in the original, and thus for the AA file, because it didn't exist in the original, and thus
`git-merge-index` didn't even try to merge the MM thing). 'git-merge-index' didn't even try to merge the MM thing).


Author Author
------ ------

View File

@ -12,8 +12,8 @@ SYNOPSIS


DESCRIPTION DESCRIPTION
----------- -----------
This is the standard helper program to use with `git-merge-index` This is the standard helper program to use with 'git-merge-index'
to resolve a merge after the trivial merge done with `git-read-tree -m`. to resolve a merge after the trivial merge done with 'git-read-tree -m'.


Author Author
------ ------

View File

@ -29,8 +29,8 @@ include::merge-options.txt[]


-m <msg>:: -m <msg>::
The commit message to be used for the merge commit (in case The commit message to be used for the merge commit (in case
it is created). The `git-fmt-merge-msg` script can be used it is created). The 'git-fmt-merge-msg' script can be used
to give a good default for automated `git-merge` invocations. to give a good default for automated 'git-merge' invocations.


<remote>:: <remote>::
Other branch head merged into our branch. You need at Other branch head merged into our branch. You need at
@ -41,7 +41,7 @@ include::merge-strategies.txt[]




If you tried a merge which resulted in a complex conflicts and If you tried a merge which resulted in a complex conflicts and
would want to start over, you can recover with `git-reset`. would want to start over, you can recover with 'git-reset'.


CONFIGURATION CONFIGURATION
------------- -------------
@ -49,7 +49,7 @@ include::merge-config.txt[]


branch.<name>.mergeoptions:: branch.<name>.mergeoptions::
Sets default options for merging into branch <name>. The syntax and Sets default options for merging into branch <name>. The syntax and
supported options are equal to that of `git-merge`, but option values supported options are equal to that of 'git-merge', but option values
containing whitespace characters are currently not supported. containing whitespace characters are currently not supported.


HOW MERGE WORKS HOW MERGE WORKS
@ -84,7 +84,7 @@ with `git pull remote rbranch:lbranch`, but your working tree,
`.git/HEAD` pointer and index file are left intact). `.git/HEAD` pointer and index file are left intact).


You may have local modifications in the working tree files. In You may have local modifications in the working tree files. In
other words, `git-diff` is allowed to report changes. other words, 'git-diff' is allowed to report changes.
However, the merge uses your working tree as the working area, However, the merge uses your working tree as the working area,
and in order to prevent the merge operation from losing such and in order to prevent the merge operation from losing such
changes, it makes sure that they do not interfere with the changes, it makes sure that they do not interfere with the
@ -140,14 +140,14 @@ After seeing a conflict, you can do two things:


* Decide not to merge. The only clean-up you need are to reset * Decide not to merge. The only clean-up you need are to reset
the index file to the `HEAD` commit to reverse 2. and to clean the index file to the `HEAD` commit to reverse 2. and to clean
up working tree changes made by 2. and 3.; `git-reset` can up working tree changes made by 2. and 3.; 'git-reset' can
be used for this. be used for this.


* Resolve the conflicts. `git diff` would report only the * Resolve the conflicts. `git diff` would report only the
conflicting paths because of the above 2. and 3. Edit the conflicting paths because of the above 2. and 3. Edit the
working tree files into a desirable shape, `git-add` or `git-rm` working tree files into a desirable shape, 'git-add' or 'git-rm'
them, to make the index file contain what the merge result them, to make the index file contain what the merge result
should be, and run `git-commit` to commit the result. should be, and run 'git-commit' to commit the result.




SEE ALSO SEE ALSO

View File

@ -13,11 +13,11 @@ DESCRIPTION
----------- -----------


Use `git mergetool` to run one of several merge utilities to resolve Use `git mergetool` to run one of several merge utilities to resolve
merge conflicts. It is typically run after `git-merge`. merge conflicts. It is typically run after 'git-merge'.


If one or more <file> parameters are given, the merge tool program will If one or more <file> parameters are given, the merge tool program will
be run to resolve differences on each file. If no <file> names are be run to resolve differences on each file. If no <file> names are
specified, `git-mergetool` will run the merge tool program on every file specified, 'git-mergetool' will run the merge tool program on every file
with merge conflicts. with merge conflicts.


OPTIONS OPTIONS
@ -27,23 +27,23 @@ OPTIONS
Valid merge tools are: Valid merge tools are:
kdiff3, tkdiff, meld, xxdiff, emerge, vimdiff, gvimdiff, ecmerge, and opendiff kdiff3, tkdiff, meld, xxdiff, emerge, vimdiff, gvimdiff, ecmerge, and opendiff
+ +
If a merge resolution program is not specified, `git-mergetool` If a merge resolution program is not specified, 'git-mergetool'
will use the configuration variable `merge.tool`. If the will use the configuration variable `merge.tool`. If the
configuration variable `merge.tool` is not set, `git-mergetool` configuration variable `merge.tool` is not set, 'git-mergetool'
will pick a suitable default. will pick a suitable default.
+ +
You can explicitly provide a full path to the tool by setting the You can explicitly provide a full path to the tool by setting the
configuration variable `mergetool.<tool>.path`. For example, you configuration variable `mergetool.<tool>.path`. For example, you
can configure the absolute path to kdiff3 by setting can configure the absolute path to kdiff3 by setting
`mergetool.kdiff3.path`. Otherwise, `git-mergetool` assumes the `mergetool.kdiff3.path`. Otherwise, 'git-mergetool' assumes the
tool is available in PATH. tool is available in PATH.
+ +
Instead of running one of the known merge tool programs Instead of running one of the known merge tool programs
`git-mergetool` can be customized to run an alternative program 'git-mergetool' can be customized to run an alternative program
by specifying the command line to invoke in a configration by specifying the command line to invoke in a configration
variable `mergetool.<tool>.cmd`. variable `mergetool.<tool>.cmd`.
+ +
When `git-mergetool` is invoked with this tool (either through the When 'git-mergetool' is invoked with this tool (either through the
`-t` or `--tool` option or the `merge.tool` configuration `-t` or `--tool` option or the `merge.tool` configuration
variable) the configured command line will be invoked with `$BASE` variable) the configured command line will be invoked with `$BASE`
set to the name of a temporary file containing the common base for set to the name of a temporary file containing the common base for
@ -57,7 +57,7 @@ merge resolution.
If the custom merge tool correctly indicates the success of a If the custom merge tool correctly indicates the success of a
merge resolution with its exit code then the configuration merge resolution with its exit code then the configuration
variable `mergetool.<tool>.trustExitCode` can be set to `true`. variable `mergetool.<tool>.trustExitCode` can be set to `true`.
Otherwise, `git-mergetool` will prompt the user to indicate the Otherwise, 'git-mergetool' will prompt the user to indicate the
success of the resolution after the custom tool has exited. success of the resolution after the custom tool has exited.


Author Author

View File

@ -15,7 +15,7 @@ SYNOPSIS
DESCRIPTION DESCRIPTION
----------- -----------
Finds symbolic names suitable for human digestion for revisions given in any Finds symbolic names suitable for human digestion for revisions given in any
format parsable by `git-rev-parse`. format parsable by 'git-rev-parse'.




OPTIONS OPTIONS
@ -38,7 +38,7 @@ OPTIONS
Instead of printing both the SHA-1 and the name, print only Instead of printing both the SHA-1 and the name, print only
the name. If given with --tags the usual tag prefix of the name. If given with --tags the usual tag prefix of
"tags/" is also omitted from the name, matching the output "tags/" is also omitted from the name, matching the output
of `git-describe` more closely. This option of 'git-describe' more closely. This option
cannot be combined with --stdin. cannot be combined with --stdin.


--no-undefined:: --no-undefined::
@ -56,7 +56,7 @@ wrote you about that fantastic commit 33db5f4d9027a10e477ccf054b2c1ab94f74c85a.
Of course, you look into the commit, but that only tells you what happened, but Of course, you look into the commit, but that only tells you what happened, but
not the context. not the context.


Enter `git-name-rev`: Enter 'git-name-rev':


------------ ------------
% git name-rev 33db5f4d9027a10e477ccf054b2c1ab94f74c85a % git name-rev 33db5f4d9027a10e477ccf054b2c1ab94f74c85a

View File

@ -30,7 +30,7 @@ Placing both in the pack/ subdirectory of $GIT_OBJECT_DIRECTORY (or
any of the directories on $GIT_ALTERNATE_OBJECT_DIRECTORIES) any of the directories on $GIT_ALTERNATE_OBJECT_DIRECTORIES)
enables git to read from such an archive. enables git to read from such an archive.


The `git-unpack-objects` command can read the packed archive and The 'git-unpack-objects' command can read the packed archive and
expand the objects contained in the pack into "one-file expand the objects contained in the pack into "one-file
one-object" format; this is typically done by the smart-pull one-object" format; this is typically done by the smart-pull
commands when a pack is created on-the-fly for efficient network commands when a pack is created on-the-fly for efficient network
@ -59,7 +59,7 @@ base-name::
--revs:: --revs::
Read the revision arguments from the standard input, instead of Read the revision arguments from the standard input, instead of
individual object names. The revision arguments are processed individual object names. The revision arguments are processed
the same way as `git-rev-list` with the `--objects` flag the same way as 'git-rev-list' with the `--objects` flag
uses its `commit` arguments to build the list of objects it uses its `commit` arguments to build the list of objects it
outputs. The objects on the resulting list are packed. outputs. The objects on the resulting list are packed.


@ -170,7 +170,7 @@ base-name::
A packed archive can express base object of a delta as A packed archive can express base object of a delta as
either 20-byte object name or as an offset in the either 20-byte object name or as an offset in the
stream, but older version of git does not understand the stream, but older version of git does not understand the
latter. By default, `git-pack-objects` only uses the latter. By default, 'git-pack-objects' only uses the
former format for better compatibility. This option former format for better compatibility. This option
allows the command to use the latter format for allows the command to use the latter format for
compactness. Depending on the average delta chain compactness. Depending on the average delta chain

View File

@ -16,7 +16,7 @@ This program computes which packs in your repository
are redundant. The output is suitable for piping to are redundant. The output is suitable for piping to
`xargs rm` if you are in the root of the repository. `xargs rm` if you are in the root of the repository.


`git-pack-redundant` accepts a list of objects on standard input. Any objects 'git-pack-redundant' accepts a list of objects on standard input. Any objects
given will be ignored when checking which packs are required. This makes the given will be ignored when checking which packs are required. This makes the
following command useful when wanting to remove packs which contain unreachable following command useful when wanting to remove packs which contain unreachable
objects. objects.

View File

@ -32,7 +32,7 @@ get_remote_refs_for_fetch::
get_remote_refs_for_push:: get_remote_refs_for_push::
Given the list of user-supplied `<repo> <refspec>...`, Given the list of user-supplied `<repo> <refspec>...`,
return the list of refs to push in a form suitable to be return the list of refs to push in a form suitable to be
fed to the `git-send-pack` command. When `<refspec>...` fed to the 'git-send-pack' command. When `<refspec>...`
is empty the returned list of refs consists of the is empty the returned list of refs consists of the
defaults for the given `<repo>`, if specified in defaults for the given `<repo>`, if specified in
`$GIT_DIR/remotes/`. `$GIT_DIR/remotes/`.

View File

@ -18,7 +18,7 @@ ID" are almost guaranteed to be the same thing.


IOW, you can use this thing to look for likely duplicate commits. IOW, you can use this thing to look for likely duplicate commits.


When dealing with `git-diff-tree` output, it takes advantage of When dealing with 'git-diff-tree' output, it takes advantage of
the fact that the patch is prefixed with the object name of the the fact that the patch is prefixed with the object name of the
commit, and outputs two 40-byte hexadecimal string. The first commit, and outputs two 40-byte hexadecimal string. The first
string is the patch ID, and the second string is the commit ID. string is the patch ID, and the second string is the commit ID.

View File

@ -12,12 +12,12 @@ SYNOPSIS


DESCRIPTION DESCRIPTION
----------- -----------
This command is deprecated; use `git-ls-remote` instead. This command is deprecated; use 'git-ls-remote' instead.


OPTIONS OPTIONS
------- -------
--upload-pack=<git-upload-pack>:: --upload-pack=<git-upload-pack>::
Use this to specify the path to `git-upload-pack` on the Use this to specify the path to 'git-upload-pack' on the
remote side, if it is not found on your $PATH. Some remote side, if it is not found on your $PATH. Some
installations of sshd ignores the user's environment installations of sshd ignores the user's environment
setup scripts for login shells (e.g. .bash_profile) and setup scripts for login shells (e.g. .bash_profile) and
@ -30,7 +30,7 @@ OPTIONS


<host>:: <host>::
A remote host that houses the repository. When this A remote host that houses the repository. When this
part is specified, `git-upload-pack` is invoked via part is specified, 'git-upload-pack' is invoked via
ssh. ssh.


<directory>:: <directory>::

View File

@ -13,16 +13,16 @@ SYNOPSIS
DESCRIPTION DESCRIPTION
----------- -----------


NOTE: In most cases, users should run `git-gc`, which calls NOTE: In most cases, users should run 'git-gc', which calls
`git-prune`. See the section "NOTES", below. 'git-prune'. See the section "NOTES", below.


This runs `git-fsck --unreachable` using all the refs This runs 'git-fsck --unreachable' using all the refs
available in `$GIT_DIR/refs`, optionally with additional set of available in `$GIT_DIR/refs`, optionally with additional set of
objects specified on the command line, and prunes all unpacked objects specified on the command line, and prunes all unpacked
objects unreachable from any of these head objects from the object database. objects unreachable from any of these head objects from the object database.
In addition, it In addition, it
prunes the unpacked objects that are also found in packs by prunes the unpacked objects that are also found in packs by
running `git-prune-packed`. running 'git-prune-packed'.


Note that unreachable, packed objects will remain. If this is Note that unreachable, packed objects will remain. If this is
not desired, see linkgit:git-repack[1]. not desired, see linkgit:git-repack[1].
@ -59,12 +59,12 @@ $ git prune $(cd ../another && $(git rev-parse --all))
Notes Notes
----- -----


In most cases, users will not need to call `git-prune` directly, but In most cases, users will not need to call 'git-prune' directly, but
should instead call `git-gc`, which handles pruning along with should instead call 'git-gc', which handles pruning along with
many other housekeeping tasks. many other housekeeping tasks.


For a description of which objects are considered for pruning, see For a description of which objects are considered for pruning, see
`git-fsck`'s --unreachable option. 'git-fsck''s --unreachable option.


SEE ALSO SEE ALSO
-------- --------

View File

@ -13,16 +13,16 @@ SYNOPSIS


DESCRIPTION DESCRIPTION
----------- -----------
Runs `git-fetch` with the given parameters, and calls `git-merge` Runs 'git-fetch' with the given parameters, and calls 'git-merge'
to merge the retrieved head(s) into the current branch. to merge the retrieved head(s) into the current branch.
With `--rebase`, calls `git-rebase` instead of `git-merge`. With `--rebase`, calls 'git-rebase' instead of 'git-merge'.


Note that you can use `.` (current directory) as the Note that you can use `.` (current directory) as the
<repository> to pull from the local repository -- this is useful <repository> to pull from the local repository -- this is useful
when merging local branches into the current branch. when merging local branches into the current branch.


Also note that options meant for `git-pull` itself and underlying Also note that options meant for 'git-pull' itself and underlying
`git-merge` must be given before the options meant for `git-fetch`. 'git-merge' must be given before the options meant for 'git-fetch'.


OPTIONS OPTIONS
------- -------
@ -182,7 +182,7 @@ The final command then merges the newly fetched `tmp` into master.




If you tried a pull which resulted in a complex conflicts and If you tried a pull which resulted in a complex conflicts and
would want to start over, you can recover with `git-reset`. would want to start over, you can recover with 'git-reset'.




SEE ALSO SEE ALSO

View File

@ -85,7 +85,7 @@ nor in any Push line of the corresponding remotes file---see below).
line. line.


--receive-pack=<git-receive-pack>:: --receive-pack=<git-receive-pack>::
Path to the `git-receive-pack` program on the remote Path to the 'git-receive-pack' program on the remote
end. Sometimes useful when pushing to a remote end. Sometimes useful when pushing to a remote
repository over ssh, and you do not have the program in repository over ssh, and you do not have the program in
a directory on the default $PATH. a directory on the default $PATH.
@ -106,7 +106,7 @@ nor in any Push line of the corresponding remotes file---see below).


--thin:: --thin::
--no-thin:: --no-thin::
These options are passed to `git-send-pack`. Thin These options are passed to 'git-send-pack'. Thin
transfer spends extra cycles to minimize the number of transfer spends extra cycles to minimize the number of
objects to be sent and meant to be used on slower connection. objects to be sent and meant to be used on slower connection.



View File

@ -22,8 +22,8 @@ fast-forward (i.e. 2-way) merge, or a 3-way merge, with the `-m`
flag. When used with `-m`, the `-u` flag causes it to also update flag. When used with `-m`, the `-u` flag causes it to also update
the files in the work tree with the result of the merge. the files in the work tree with the result of the merge.


Trivial merges are done by `git-read-tree` itself. Only conflicting paths Trivial merges are done by 'git-read-tree' itself. Only conflicting paths
will be in unmerged state when `git-read-tree` returns. will be in unmerged state when 'git-read-tree' returns.


OPTIONS OPTIONS
------- -------
@ -54,13 +54,13 @@ OPTIONS
Show the progress of checking files out. Show the progress of checking files out.


--trivial:: --trivial::
Restrict three-way merge by `git-read-tree` to happen Restrict three-way merge by 'git-read-tree' to happen
only if there is no file-level merging required, instead only if there is no file-level merging required, instead
of resolving merge for trivial cases and leaving of resolving merge for trivial cases and leaving
conflicting files unresolved in the index. conflicting files unresolved in the index.


--aggressive:: --aggressive::
Usually a three-way merge by `git-read-tree` resolves Usually a three-way merge by 'git-read-tree' resolves
the merge for really trivial cases and leaves other the merge for really trivial cases and leaves other
cases unresolved in the index, so that Porcelains can cases unresolved in the index, so that Porcelains can
implement different merge policies. This flag makes the implement different merge policies. This flag makes the
@ -113,7 +113,7 @@ OPTIONS


Merging Merging
------- -------
If `-m` is specified, `git-read-tree` can perform 3 kinds of If `-m` is specified, 'git-read-tree' can perform 3 kinds of
merge, a single tree merge if only 1 tree is given, a merge, a single tree merge if only 1 tree is given, a
fast-forward merge with 2 trees, or a 3-way merge if 3 trees are fast-forward merge with 2 trees, or a 3-way merge if 3 trees are
provided. provided.
@ -121,18 +121,18 @@ provided.


Single Tree Merge Single Tree Merge
~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~
If only 1 tree is specified, `git-read-tree` operates as if the user did not If only 1 tree is specified, 'git-read-tree' operates as if the user did not
specify `-m`, except that if the original index has an entry for a specify `-m`, except that if the original index has an entry for a
given pathname, and the contents of the path matches with the tree given pathname, and the contents of the path matches with the tree
being read, the stat info from the index is used. (In other words, the being read, the stat info from the index is used. (In other words, the
index's stat()s take precedence over the merged tree's). index's stat()s take precedence over the merged tree's).


That means that if you do a `git read-tree -m <newtree>` followed by a That means that if you do a `git read-tree -m <newtree>` followed by a
`git checkout-index -f -u -a`, the `git-checkout-index` only checks out `git checkout-index -f -u -a`, the 'git-checkout-index' only checks out
the stuff that really changed. the stuff that really changed.


This is used to avoid unnecessary false hits when `git-diff-files` is This is used to avoid unnecessary false hits when 'git-diff-files' is
run after `git-read-tree`. run after 'git-read-tree'.




Two Tree Merge Two Tree Merge
@ -143,7 +143,7 @@ is the head commit of the current repository, and $M is the head
of a foreign tree, which is simply ahead of $H (i.e. we are in a of a foreign tree, which is simply ahead of $H (i.e. we are in a
fast forward situation). fast forward situation).


When two trees are specified, the user is telling `git-read-tree` When two trees are specified, the user is telling 'git-read-tree'
the following: the following:


1. The current index and work tree is derived from $H, but 1. The current index and work tree is derived from $H, but
@ -193,10 +193,10 @@ Here are the "carry forward" rules:


In all "keep index" cases, the index entry stays as in the In all "keep index" cases, the index entry stays as in the
original index file. If the entry were not up to date, original index file. If the entry were not up to date,
`git-read-tree` keeps the copy in the work tree intact when 'git-read-tree' keeps the copy in the work tree intact when
operating under the -u flag. operating under the -u flag.


When this form of `git-read-tree` returns successfully, you can When this form of 'git-read-tree' returns successfully, you can
see what "local changes" you made are carried forward by running see what "local changes" you made are carried forward by running
`git diff-index --cached $M`. Note that this does not `git diff-index --cached $M`. Note that this does not
necessarily match `git diff-index --cached $H` would have necessarily match `git diff-index --cached $H` would have
@ -213,7 +213,7 @@ output after two-tree merge.
Each "index" entry has two bits worth of "stage" state. stage 0 is the Each "index" entry has two bits worth of "stage" state. stage 0 is the
normal one, and is the only one you'd see in any kind of normal use. normal one, and is the only one you'd see in any kind of normal use.


However, when you do `git-read-tree` with three trees, the "stage" However, when you do 'git-read-tree' with three trees, the "stage"
starts out at 1. starts out at 1.


This means that you can do This means that you can do
@ -229,7 +229,7 @@ branch into the current branch, we use the common ancestor tree
as <tree1>, the current branch head as <tree2>, and the other as <tree1>, the current branch head as <tree2>, and the other
branch head as <tree3>. branch head as <tree3>.


Furthermore, `git-read-tree` has special-case logic that says: if you see Furthermore, 'git-read-tree' has special-case logic that says: if you see
a file that matches in all respects in the following states, it a file that matches in all respects in the following states, it
"collapses" back to "stage0": "collapses" back to "stage0":


@ -245,7 +245,7 @@ a file that matches in all respects in the following states, it
- stage 1 and stage 3 are the same and stage 2 is different take - stage 1 and stage 3 are the same and stage 2 is different take
stage 2 (we did something while they did nothing) stage 2 (we did something while they did nothing)


The `git-write-tree` command refuses to write a nonsensical tree, and it The 'git-write-tree' command refuses to write a nonsensical tree, and it
will complain about unmerged entries if it sees a single entry that is not will complain about unmerged entries if it sees a single entry that is not
stage 0. stage 0.


@ -261,7 +261,7 @@ start a 3-way merge with an index file that is already
populated. Here is an outline of how the algorithm works: populated. Here is an outline of how the algorithm works:


- if a file exists in identical format in all three trees, it will - if a file exists in identical format in all three trees, it will
automatically collapse to "merged" state by `git-read-tree`. automatically collapse to "merged" state by 'git-read-tree'.


- a file that has _any_ difference what-so-ever in the three trees - a file that has _any_ difference what-so-ever in the three trees
will stay as separate entries in the index. It's up to "porcelain will stay as separate entries in the index. It's up to "porcelain
@ -285,8 +285,8 @@ populated. Here is an outline of how the algorithm works:
matching "stage1" entry if it exists too. .. all the normal matching "stage1" entry if it exists too. .. all the normal
trivial rules .. trivial rules ..


You would normally use `git-merge-index` with supplied You would normally use 'git-merge-index' with supplied
`git-merge-one-file` to do this last step. The script updates 'git-merge-one-file' to do this last step. The script updates
the files in the working tree as it merges each path and at the the files in the working tree as it merges each path and at the
end of a successful merge. end of a successful merge.


@ -308,7 +308,7 @@ $ JC=`git rev-parse --verify "HEAD^0"`
$ git checkout-index -f -u -a $JC $ git checkout-index -f -u -a $JC
---------------- ----------------


You do random edits, without running `git-update-index`. And then You do random edits, without running 'git-update-index'. And then
you notice that the tip of your "upstream" tree has advanced you notice that the tip of your "upstream" tree has advanced
since you pulled from him: since you pulled from him:


@ -334,14 +334,14 @@ your work-in-progress changes, and your work tree would be
updated to the result of the merge. updated to the result of the merge.


However, if you have local changes in the working tree that However, if you have local changes in the working tree that
would be overwritten by this merge, `git-read-tree` will refuse would be overwritten by this merge, 'git-read-tree' will refuse
to run to prevent your changes from being lost. to run to prevent your changes from being lost.


In other words, there is no need to worry about what exists only In other words, there is no need to worry about what exists only
in the working tree. When you have local changes in a part of in the working tree. When you have local changes in a part of
the project that is not involved in the merge, your changes do the project that is not involved in the merge, your changes do
not interfere with the merge, and are kept intact. When they not interfere with the merge, and are kept intact. When they
*do* interfere, the merge does not even start (`git-read-tree` *do* interfere, the merge does not even start ('git-read-tree'
complains loudly and fails without modifying anything). In such complains loudly and fails without modifying anything). In such
a case, you can simply continue doing what you were in the a case, you can simply continue doing what you were in the
middle of doing, and when your working tree is ready (i.e. you middle of doing, and when your working tree is ready (i.e. you

View File

@ -16,7 +16,7 @@ SYNOPSIS


DESCRIPTION DESCRIPTION
----------- -----------
If <branch> is specified, `git-rebase` will perform an automatic If <branch> is specified, 'git-rebase' will perform an automatic
`git checkout <branch>` before doing anything else. Otherwise `git checkout <branch>` before doing anything else. Otherwise
it remains on the current branch. it remains on the current branch.


@ -167,8 +167,8 @@ This is useful if F and G were flawed in some way, or should not be
part of topicA. Note that the argument to --onto and the <upstream> part of topicA. Note that the argument to --onto and the <upstream>
parameter can be any valid commit-ish. parameter can be any valid commit-ish.


In case of conflict, `git-rebase` will stop at the first problematic commit In case of conflict, 'git-rebase' will stop at the first problematic commit
and leave conflict markers in the tree. You can use `git-diff` to locate and leave conflict markers in the tree. You can use 'git-diff' to locate
the markers (<<<<<<) and make edits to resolve the conflict. For each the markers (<<<<<<) and make edits to resolve the conflict. For each
file you edit, you need to tell git that the conflict has been resolved, file you edit, you need to tell git that the conflict has been resolved,
typically this would be done with typically this would be done with
@ -184,7 +184,7 @@ desired resolution, you can continue the rebasing process with
git rebase --continue git rebase --continue




Alternatively, you can undo the `git-rebase` with Alternatively, you can undo the 'git-rebase' with




git rebase --abort git rebase --abort
@ -224,8 +224,8 @@ OPTIONS
Use the given merge strategy; can be supplied more than Use the given merge strategy; can be supplied more than
once to specify them in the order they should be tried. once to specify them in the order they should be tried.
If there is no `-s` option, a built-in list of strategies If there is no `-s` option, a built-in list of strategies
is used instead (`git-merge-recursive` when merging a single is used instead ('git-merge-recursive' when merging a single
head, `git-merge-octopus` otherwise). This implies --merge. head, 'git-merge-octopus' otherwise). This implies --merge.


-v:: -v::
--verbose:: --verbose::
@ -238,7 +238,7 @@ OPTIONS
ever ignored. ever ignored.


--whitespace=<nowarn|warn|error|error-all|strip>:: --whitespace=<nowarn|warn|error|error-all|strip>::
This flag is passed to the `git-apply` program This flag is passed to the 'git-apply' program
(see linkgit:git-apply[1]) that applies the patch. (see linkgit:git-apply[1]) that applies the patch.


-i:: -i::
@ -314,12 +314,12 @@ pick fa1afe1 The oneline of the next commit
... ...
------------------------------------------- -------------------------------------------


The oneline descriptions are purely for your pleasure; `git-rebase` will The oneline descriptions are purely for your pleasure; 'git-rebase' will
not look at them but at the commit names ("deadbee" and "fa1afe1" in this not look at them but at the commit names ("deadbee" and "fa1afe1" in this
example), so do not delete or edit the names. example), so do not delete or edit the names.


By replacing the command "pick" with the command "edit", you can tell By replacing the command "pick" with the command "edit", you can tell
`git-rebase` to stop after applying that commit, so that you can edit 'git-rebase' to stop after applying that commit, so that you can edit
the files and/or the commit message, amend the commit, and continue the files and/or the commit message, amend the commit, and continue
rebasing. rebasing.


@ -334,7 +334,7 @@ the loop with `git rebase --continue`.


For example, if you want to reorder the last 5 commits, such that what For example, if you want to reorder the last 5 commits, such that what
was HEAD~4 becomes the new HEAD. To achieve that, you would call was HEAD~4 becomes the new HEAD. To achieve that, you would call
`git-rebase` like this: 'git-rebase' like this:


---------------------- ----------------------
$ git rebase -i HEAD~5 $ git rebase -i HEAD~5
@ -364,7 +364,7 @@ SPLITTING COMMITS
----------------- -----------------


In interactive mode, you can mark commits with the action "edit". However, In interactive mode, you can mark commits with the action "edit". However,
this does not necessarily mean that `git-rebase` expects the result of this this does not necessarily mean that 'git-rebase' expects the result of this
edit to be exactly one commit. Indeed, you can undo the commit, or you can edit to be exactly one commit. Indeed, you can undo the commit, or you can
add other commits. This can be used to split a commit into two: add other commits. This can be used to split a commit into two:


@ -380,7 +380,7 @@ add other commits. This can be used to split a commit into two:


- Now add the changes to the index that you want to have in the first - Now add the changes to the index that you want to have in the first
commit. You can use `git add` (possibly interactively) or commit. You can use `git add` (possibly interactively) or
`git-gui` (or both) to do that. 'git-gui' (or both) to do that.


- Commit the now-current index with whatever commit message is appropriate - Commit the now-current index with whatever commit message is appropriate
now. now.
@ -391,7 +391,7 @@ add other commits. This can be used to split a commit into two:


If you are not absolutely sure that the intermediate revisions are If you are not absolutely sure that the intermediate revisions are
consistent (they compile, pass the testsuite, etc.) you should use consistent (they compile, pass the testsuite, etc.) you should use
`git-stash` to stash away the not-yet-committed changes 'git-stash' to stash away the not-yet-committed changes
after each commit, test, and amend the commit if fixes are necessary. after each commit, test, and amend the commit if fixes are necessary.





View File

@ -12,23 +12,23 @@ SYNOPSIS


DESCRIPTION DESCRIPTION
----------- -----------
Invoked by `git-send-pack` and updates the repository with the Invoked by 'git-send-pack' and updates the repository with the
information fed from the remote end. information fed from the remote end.


This command is usually not invoked directly by the end user. This command is usually not invoked directly by the end user.
The UI for the protocol is on the `git-send-pack` side, and the The UI for the protocol is on the 'git-send-pack' side, and the
program pair is meant to be used to push updates to remote program pair is meant to be used to push updates to remote
repository. For pull operations, see linkgit:git-fetch-pack[1]. repository. For pull operations, see linkgit:git-fetch-pack[1].


The command allows for creation and fast forwarding of sha1 refs The command allows for creation and fast forwarding of sha1 refs
(heads/tags) on the remote end (strictly speaking, it is the (heads/tags) on the remote end (strictly speaking, it is the
local end `git-receive-pack` runs, but to the user who is sitting at local end 'git-receive-pack' runs, but to the user who is sitting at
the send-pack end, it is updating the remote. Confused?) the send-pack end, it is updating the remote. Confused?)


There are other real-world examples of using update and There are other real-world examples of using update and
post-update hooks found in the Documentation/howto directory. post-update hooks found in the Documentation/howto directory.


`git-receive-pack` honours the receive.denyNonFastForwards config 'git-receive-pack' honours the receive.denyNonFastForwards config
option, which tells it if updates to a ref should be denied if they option, which tells it if updates to a ref should be denied if they
are not fast-forwards. are not fast-forwards.


@ -125,7 +125,7 @@ non-zero exit code will generate an error message.


Note that it is possible for refname to not have sha1-new when this Note that it is possible for refname to not have sha1-new when this
hook runs. This can easily occur if another user modifies the ref hook runs. This can easily occur if another user modifies the ref
after it was updated by `git-receive-pack`, but before the hook was able 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 to evaluate it. It is recommended that hooks rely on sha1-new
rather than the current value of refname. rather than the current value of refname.


@ -137,7 +137,7 @@ post-update will called with the list of refs that have been updated.
This can be used to implement any repository wide cleanup tasks. This can be used to implement any repository wide cleanup tasks.


The exit code from this hook invocation is ignored; the only thing The exit code from this hook invocation is ignored; the only thing
left for `git-receive-pack` to do at that point is to exit itself left for 'git-receive-pack' to do at that point is to exit itself
anyway. anyway.


This hook can be used, for example, to run `git update-server-info` This hook can be used, for example, to run `git update-server-info`

View File

@ -47,29 +47,29 @@ OPTIONS
deleted by way of being left in the old pack and then deleted by way of being left in the old pack and then
removed. Instead, the loose unreachable objects removed. Instead, the loose unreachable objects
will be pruned according to normal expiry rules will be pruned according to normal expiry rules
with the next `git-gc` invocation. See linkgit:git-gc[1]. with the next 'git-gc' invocation. See linkgit:git-gc[1].


-d:: -d::
After packing, if the newly created packs make some After packing, if the newly created packs make some
existing packs redundant, remove the redundant packs. existing packs redundant, remove the redundant packs.
Also run `git-prune-packed` to remove redundant Also run 'git-prune-packed' to remove redundant
loose object files. loose object files.


-l:: -l::
Pass the `--local` option to `git-pack-objects`. See Pass the `--local` option to 'git-pack-objects'. See
linkgit:git-pack-objects[1]. linkgit:git-pack-objects[1].


-f:: -f::
Pass the `--no-reuse-delta` option to `git-pack-objects`. See Pass the `--no-reuse-delta` option to 'git-pack-objects'. See
linkgit:git-pack-objects[1]. linkgit:git-pack-objects[1].


-q:: -q::
Pass the `-q` option to `git-pack-objects`. See Pass the `-q` option to 'git-pack-objects'. See
linkgit:git-pack-objects[1]. linkgit:git-pack-objects[1].


-n:: -n::
Do not update the server information with Do not update the server information with
`git-update-server-info`. This option skips 'git-update-server-info'. This option skips
updating local catalog files needed to publish updating local catalog files needed to publish
this repository (or a direct copy of it) this repository (or a direct copy of it)
over HTTP or FTP. See linkgit:git-update-server-info[1]. over HTTP or FTP. See linkgit:git-update-server-info[1].
@ -107,7 +107,7 @@ Configuration


When configuration variable `repack.UseDeltaBaseOffset` is set When configuration variable `repack.UseDeltaBaseOffset` is set
for the repository, the command passes `--delta-base-offset` for the repository, the command passes `--delta-base-offset`
option to `git-pack-objects`; this typically results in slightly option to 'git-pack-objects'; this typically results in slightly
smaller packs, but the generated packs are incompatible with smaller packs, but the generated packs are incompatible with
versions of git older than (and including) v1.4.3; do not set versions of git older than (and including) v1.4.3; do not set
the variable in a repository that older version of git needs to the variable in a repository that older version of git needs to

View File

@ -30,14 +30,14 @@ enable this command.
COMMANDS COMMANDS
-------- --------


Normally, `git-rerere` is run without arguments or user-intervention. Normally, 'git-rerere' is run without arguments or user-intervention.
However, it has several commands that allow it to interact with However, it has several commands that allow it to interact with
its working state. its working state.


'clear':: 'clear'::


This resets the metadata used by rerere if a merge resolution is to be This resets the metadata used by rerere if a merge resolution is to be
is aborted. Calling `git-am --skip` or `git-rebase [--skip|--abort]` is aborted. Calling 'git-am --skip' or 'git-rebase [--skip|--abort]'
will automatically invoke this command. will automatically invoke this command.


'diff':: 'diff'::
@ -142,33 +142,33 @@ finally ready and merged into the master branch. This merge
would require you to resolve the conflict, introduced by the would require you to resolve the conflict, introduced by the
commits marked with `*`. However, often this conflict is the commits marked with `*`. However, often this conflict is the
same conflict you resolved when you created the test merge you same conflict you resolved when you created the test merge you
blew away. `git-rerere` command helps you to resolve this final blew away. 'git-rerere' command helps you to resolve this final
conflicted merge using the information from your earlier hand conflicted merge using the information from your earlier hand
resolve. resolve.


Running the `git-rerere` command immediately after a conflicted Running the 'git-rerere' command immediately after a conflicted
automerge records the conflicted working tree files, with the automerge records the conflicted working tree files, with the
usual conflict markers `<<<<<<<`, `=======`, and `>>>>>>>` in usual conflict markers `<<<<<<<`, `=======`, and `>>>>>>>` in
them. Later, after you are done resolving the conflicts, them. Later, after you are done resolving the conflicts,
running `git-rerere` again records the resolved state of these running 'git-rerere' again records the resolved state of these
files. Suppose you did this when you created the test merge of files. Suppose you did this when you created the test merge of
master into the topic branch. master into the topic branch.


Next time, running `git-rerere` after seeing a conflicted Next time, running 'git-rerere' after seeing a conflicted
automerge, if the conflict is the same as the earlier one automerge, if the conflict is the same as the earlier one
recorded, it is noticed and a three-way merge between the recorded, it is noticed and a three-way merge between the
earlier conflicted automerge, the earlier manual resolution, and earlier conflicted automerge, the earlier manual resolution, and
the current conflicted automerge is performed by the command. the current conflicted automerge is performed by the command.
If this three-way merge resolves cleanly, the result is written If this three-way merge resolves cleanly, the result is written
out to your working tree file, so you would not have to manually out to your working tree file, so you would not have to manually
resolve it. Note that `git-rerere` leaves the index file alone, resolve it. Note that 'git-rerere' leaves the index file alone,
so you still need to do the final sanity checks with `git diff` so you still need to do the final sanity checks with `git diff`
(or `git diff -c`) and `git-add` when you are satisfied. (or `git diff -c`) and 'git-add' when you are satisfied.


As a convenience measure, `git-merge` automatically invokes As a convenience measure, 'git-merge' automatically invokes
`git-rerere` when it exits with a failed automerge, which 'git-rerere' when it exits with a failed automerge, which
records it if it is a new conflict, or reuses the earlier hand records it if it is a new conflict, or reuses the earlier hand
resolve when it is not. `git-commit` also invokes `git-rerere` resolve when it is not. 'git-commit' also invokes 'git-rerere'
when recording a merge result. What this means is that you do when recording a merge result. What this means is that you do
not have to do anything special yourself (Note: you still have not have to do anything special yourself (Note: you still have
to set the config variable rerere.enabled to enable this command). to set the config variable rerere.enabled to enable this command).
@ -178,8 +178,8 @@ resolution is recorded, and it will be reused when you do the
actual merge later with updated master and topic branch, as long actual merge later with updated master and topic branch, as long
as the earlier resolution is still applicable. as the earlier resolution is still applicable.


The information `git-rerere` records is also used when running The information 'git-rerere' records is also used when running
`git-rebase`. After blowing away the test merge and continuing 'git-rebase'. After blowing away the test merge and continuing
development on the topic branch: development on the topic branch:


------------ ------------
@ -198,7 +198,7 @@ you could run `git rebase master topic`, to keep yourself
up-to-date even before your topic is ready to be sent upstream. up-to-date even before your topic is ready to be sent upstream.
This would result in falling back to three-way merge, and it This would result in falling back to three-way merge, and it
would conflict the same way the test merge you resolved earlier. would conflict the same way the test merge you resolved earlier.
`git-rerere` is run by `git-rebase` to help you resolve this 'git-rerere' is run by 'git-rebase' to help you resolve this
conflict. conflict.





View File

@ -37,7 +37,7 @@ OPTIONS
--soft:: --soft::
Does not touch the index file nor the working tree at all, but Does not touch the index file nor the working tree at all, but
requires them to be in a good order. This leaves all your changed requires them to be in a good order. This leaves all your changed
files "Changes to be committed", as `git-status` would files "Changes to be committed", as 'git-status' would
put it. put it.


--hard:: --hard::

View File

@ -83,11 +83,11 @@ between the two operands. The following two commands are equivalent:
$ git rev-list A...B $ git rev-list A...B
----------------------------------------------------------------------- -----------------------------------------------------------------------


`git-rev-list` is a very essential git program, since it 'git-rev-list' is a very essential git program, since it
provides the ability to build and traverse commit ancestry graphs. For provides the ability to build and traverse commit ancestry graphs. For
this reason, it has a lot of different options that enables it to be this reason, it has a lot of different options that enables it to be
used by commands as different as `git-bisect` and used by commands as different as 'git-bisect' and
`git-repack`. 'git-repack'.


OPTIONS OPTIONS
------- -------

View File

@ -15,16 +15,16 @@ DESCRIPTION


Many git porcelainish commands take mixture of flags Many git porcelainish commands take mixture of flags
(i.e. parameters that begin with a dash '-') and parameters (i.e. parameters that begin with a dash '-') and parameters
meant for the underlying `git-rev-list` command they use internally meant for the underlying 'git-rev-list' command they use internally
and flags and parameters for the other commands they use and flags and parameters for the other commands they use
downstream of `git-rev-list`. This command is used to downstream of 'git-rev-list'. This command is used to
distinguish between them. distinguish between them.




OPTIONS OPTIONS
------- -------
--parseopt:: --parseopt::
Use `git-rev-parse` in option parsing mode (see PARSEOPT section below). Use 'git-rev-parse' in option parsing mode (see PARSEOPT section below).


--keep-dash-dash:: --keep-dash-dash::
Only meaningful in `--parseopt` mode. Tells the option parser to echo Only meaningful in `--parseopt` mode. Tells the option parser to echo
@ -32,11 +32,11 @@ OPTIONS


--revs-only:: --revs-only::
Do not output flags and parameters not meant for Do not output flags and parameters not meant for
`git-rev-list` command. 'git-rev-list' command.


--no-revs:: --no-revs::
Do not output flags and parameters meant for Do not output flags and parameters meant for
`git-rev-list` command. 'git-rev-list' command.


--flags:: --flags::
Do not output non-flag parameters. Do not output non-flag parameters.
@ -64,7 +64,7 @@ OPTIONS
properly quoted for consumption by shell. Useful when properly quoted for consumption by shell. Useful when
you expect your parameter to contain whitespaces and you expect your parameter to contain whitespaces and
newlines (e.g. when using pickaxe `-S` with newlines (e.g. when using pickaxe `-S` with
`git-diff-\*`). 'git-diff-\*').


--not:: --not::
When showing object names, prefix them with '{caret}' and When showing object names, prefix them with '{caret}' and
@ -129,12 +129,12 @@ OPTIONS
--since=datestring:: --since=datestring::
--after=datestring:: --after=datestring::
Parse the date string, and output the corresponding Parse the date string, and output the corresponding
--max-age= parameter for `git-rev-list`. --max-age= parameter for 'git-rev-list'.


--until=datestring:: --until=datestring::
--before=datestring:: --before=datestring::
Parse the date string, and output the corresponding Parse the date string, and output the corresponding
--min-age= parameter for `git-rev-list`. --min-age= parameter for 'git-rev-list'.


<args>...:: <args>...::
Flags and parameters to be parsed. Flags and parameters to be parsed.
@ -155,7 +155,7 @@ blobs contained in a commit.
name the same commit object if there are no other object in name the same commit object if there are no other object in
your repository whose object name starts with dae86e. your repository whose object name starts with dae86e.


* An output from `git-describe`; i.e. a closest tag, followed by a * An output from 'git-describe'; i.e. a closest tag, followed by a
dash, a `g`, and an abbreviated object name. dash, a `g`, and an abbreviated object name.


* A symbolic ref name. E.g. 'master' typically means the commit * A symbolic ref name. E.g. 'master' typically means the commit
@ -278,7 +278,7 @@ G H I J
SPECIFYING RANGES SPECIFYING RANGES
----------------- -----------------


History traversing commands such as `git-log` operate on a set History traversing commands such as 'git-log' operate on a set
of commits, not just a single commit. To these commands, of commits, not just a single commit. To these commands,
specifying a single revision with the notation described in the specifying a single revision with the notation described in the
previous section means the set of commits reachable from that previous section means the set of commits reachable from that
@ -319,7 +319,7 @@ Here are a handful of examples:
PARSEOPT PARSEOPT
-------- --------


In `--parseopt` mode, `git-rev-parse` helps massaging options to bring to shell In `--parseopt` mode, 'git-rev-parse' helps massaging options to bring to shell
scripts the same facilities C builtins have. It works as an option normalizer scripts the same facilities C builtins have. It works as an option normalizer
(e.g. splits single switches aggregate values), a bit like `getopt(1)` does. (e.g. splits single switches aggregate values), a bit like `getopt(1)` does.


@ -331,7 +331,7 @@ usage on the standard error stream, and exits with code 129.
Input Format Input Format
~~~~~~~~~~~~ ~~~~~~~~~~~~


`git-rev-parse --parseopt` input format is fully text based. It has two parts, 'git-rev-parse --parseopt' input format is fully text based. It has two parts,
separated by a line that contains only `--`. The lines before the separator separated by a line that contains only `--`. The lines before the separator
(should be more than one) are used for the usage. (should be more than one) are used for the usage.
The lines after the separator describe the options. The lines after the separator describe the options.

View File

@ -24,7 +24,7 @@ OPTIONS


-e:: -e::
--edit:: --edit::
With this option, `git-revert` will let you edit the commit With this option, 'git-revert' will let you edit the commit
message prior to committing the revert. This is the default if message prior to committing the revert. This is the default if
you run the command from a terminal. you run the command from a terminal.


@ -37,7 +37,7 @@ OPTIONS
relative to the specified parent. relative to the specified parent.


--no-edit:: --no-edit::
With this option, `git-revert` will not start the commit With this option, 'git-revert' will not start the commit
message editor. message editor.


-n:: -n::

View File

@ -12,7 +12,7 @@ SYNOPSIS
DESCRIPTION DESCRIPTION
----------- -----------
Remove files from the index, or from the working tree and the index. Remove files from the index, or from the working tree and the index.
`git-rm` will not remove a file from just your working directory. 'git-rm' will not remove a file from just your working directory.
(There is no option to remove a file only from the work tree (There is no option to remove a file only from the work tree
and yet keep it in the index; use `/bin/rm` if you want to do that.) and yet keep it in the index; use `/bin/rm` if you want to do that.)
The files being removed have to be identical to the tip of the branch, The files being removed have to be identical to the tip of the branch,
@ -63,7 +63,7 @@ OPTIONS


-q:: -q::
--quiet:: --quiet::
`git-rm` normally outputs one line (in the form of an "rm" command) 'git-rm' normally outputs one line (in the form of an "rm" command)
for each file removed. This option suppresses that output. for each file removed. This option suppresses that output.





View File

@ -12,17 +12,17 @@ SYNOPSIS


DESCRIPTION DESCRIPTION
----------- -----------
Usually you would want to use `git-push`, which is a Usually you would want to use 'git-push', which is a
higher-level wrapper of this command, instead. See linkgit:git-push[1]. higher-level wrapper of this command, instead. See linkgit:git-push[1].


Invokes `git-receive-pack` on a possibly remote repository, and Invokes 'git-receive-pack' on a possibly remote repository, and
updates it from the current repository, sending named refs. updates it from the current repository, sending named refs.




OPTIONS OPTIONS
------- -------
--receive-pack=<git-receive-pack>:: --receive-pack=<git-receive-pack>::
Path to the `git-receive-pack` program on the remote Path to the 'git-receive-pack' program on the remote
end. Sometimes useful when pushing to a remote end. Sometimes useful when pushing to a remote
repository over ssh, and you do not have the program in repository over ssh, and you do not have the program in
a directory on the default $PATH. a directory on the default $PATH.
@ -53,7 +53,7 @@ OPTIONS


<host>:: <host>::
A remote host to house the repository. When this A remote host to house the repository. When this
part is specified, `git-receive-pack` is invoked via part is specified, 'git-receive-pack' is invoked via
ssh. ssh.


<directory>:: <directory>::
@ -86,7 +86,7 @@ and the destination side (after the colon). The ref to be
pushed is determined by finding a match that matches the source pushed is determined by finding a match that matches the source
side, and where it is pushed is determined by using the side, and where it is pushed is determined by using the
destination side. The rules used to match a ref are the same destination side. The rules used to match a ref are the same
rules used by `git-rev-parse` to resolve a symbolic ref rules used by 'git-rev-parse' to resolve a symbolic ref
name. See linkgit:git-rev-parse[1]. name. See linkgit:git-rev-parse[1].


- It is an error if <src> does not match exactly one of the - It is an error if <src> does not match exactly one of the

View File

@ -16,7 +16,7 @@ This is not a command the end user would want to run. Ever.
This documentation is meant for people who are studying the This documentation is meant for people who are studying the
Porcelain-ish scripts and/or are writing new ones. Porcelain-ish scripts and/or are writing new ones.


The `git-sh-setup` scriptlet is designed to be sourced (using The 'git-sh-setup' scriptlet is designed to be sourced (using
`.`) by other shell scripts to set up some variables pointing at `.`) by other shell scripts to set up some variables pointing at
the normal git directories and a few helper shell functions. the normal git directories and a few helper shell functions.



View File

@ -18,7 +18,7 @@ of server-side GIT commands implementing the pull/push functionality.
The commands can be executed only by the '-c' option; the shell is not The commands can be executed only by the '-c' option; the shell is not
interactive. interactive.


Currently, only the `git-receive-pack` and `git-upload-pack` commands Currently, only the 'git-receive-pack' and 'git-upload-pack' commands
are permitted to be called, with a single required argument. are permitted to be called, with a single required argument.


Author Author

View File

@ -13,7 +13,7 @@ git shortlog [-n|--numbered] [-s|--summary] [-e|--email] [-w[<width>[,<indent1>[


DESCRIPTION DESCRIPTION
----------- -----------
Summarizes `git-log` output in a format suitable for inclusion Summarizes 'git-log' output in a format suitable for inclusion
in release announcements. Each commit will be grouped by author and in release announcements. Each commit will be grouped by author and
the first line of the commit message will be shown. the first line of the commit message will be shown.



View File

@ -75,7 +75,7 @@ OPTIONS


--merge-base:: --merge-base::
Instead of showing the commit list, just act like the Instead of showing the commit list, just act like the
`git-merge-base -a` command, except that it can accept 'git-merge-base -a' command, except that it can accept
more than two heads. more than two heads.


--independent:: --independent::

View File

@ -14,10 +14,10 @@ SYNOPSIS
DESCRIPTION DESCRIPTION
----------- -----------
Reads given idx file for packed git archive created with Reads given idx file for packed git archive created with
`git-pack-objects` command, and dumps its contents. 'git-pack-objects' command, and dumps its contents.


The information it outputs is subset of what you can get from The information it outputs is subset of what you can get from
`git-verify-pack -v`; this command only shows the packfile 'git-verify-pack -v'; this command only shows the packfile
offset and SHA1 of each object. offset and SHA1 of each object.





View File

@ -74,7 +74,7 @@ OPTIONS
--exclude-existing:: --exclude-existing::
--exclude-existing=pattern:: --exclude-existing=pattern::


Make `git-show-ref` act as a filter that reads refs from stdin of the Make 'git-show-ref' act as a filter that reads refs from stdin of the
form "^(?:<anything>\s)?<refname>(?:\^\{\})?$" and performs the form "^(?:<anything>\s)?<refname>(?:\^\{\})?$" and performs the
following actions on each: following actions on each:
(1) strip "^{}" at the end of line if any; (1) strip "^{}" at the end of line if any;
@ -137,7 +137,7 @@ When using the '--verify' flag, the command requires an exact path:


will only match the exact branch called "master". will only match the exact branch called "master".


If nothing matches, `git-show-ref` will return an error code of 1, If nothing matches, 'git-show-ref' will return an error code of 1,
and in the case of verification, it will show an error message. and in the case of verification, it will show an error message.


For scripting, you can ask it to be quiet with the "--quiet" flag, which For scripting, you can ask it to be quiet with the "--quiet" flag, which

View File

@ -16,16 +16,16 @@ Shows one or more objects (blobs, trees, tags and commits).


For commits it shows the log message and textual diff. It also For commits it shows the log message and textual diff. It also
presents the merge commit in a special format as produced by presents the merge commit in a special format as produced by
`git-diff-tree --cc`. 'git-diff-tree --cc'.


For tags, it shows the tag message and the referenced objects. For tags, it shows the tag message and the referenced objects.


For trees, it shows the names (equivalent to `git-ls-tree` For trees, it shows the names (equivalent to 'git-ls-tree'
with \--name-only). with \--name-only).


For plain blobs, it shows the plain contents. For plain blobs, it shows the plain contents.


The command takes options applicable to the `git-diff-tree` command to The command takes options applicable to the 'git-diff-tree' command to
control how the changes the commit introduces are shown. control how the changes the commit introduces are shown.


This manual page describes only the most frequently used options. This manual page describes only the most frequently used options.

View File

@ -56,7 +56,7 @@ stash@{0}: WIP on submit: 6ebd0e2... Update git-stash documentation
stash@{1}: On master: 9cc0589... Add git-stash stash@{1}: On master: 9cc0589... Add git-stash
---------------------------------------------------------------- ----------------------------------------------------------------
+ +
The command takes options applicable to the `git-log` The command takes options applicable to the 'git-log'
command to control what is shown and how. See linkgit:git-log[1]. command to control what is shown and how. See linkgit:git-log[1].


show [<stash>]:: show [<stash>]::
@ -64,7 +64,7 @@ show [<stash>]::
Show the changes recorded in the stash as a diff between the Show the changes recorded in the stash as a diff between the
stashed state and its original parent. When no `<stash>` is given, stashed state and its original parent. When no `<stash>` is given,
shows the latest one. By default, the command shows the diffstat, but shows the latest one. By default, the command shows the diffstat, but
it will accept any format known to `git-diff` (e.g., `git stash show it will accept any format known to 'git-diff' (e.g., `git stash show
-p stash@\{1}` to view the second most recent stash in patch form). -p stash@\{1}` to view the second most recent stash in patch form).


apply [--index] [<stash>]:: apply [--index] [<stash>]::
@ -158,7 +158,7 @@ $ git reset --soft HEAD^
... continue hacking ... ... continue hacking ...
---------------------------------------------------------------- ----------------------------------------------------------------
+ +
You can use `git-stash` to simplify the above, like this: You can use 'git-stash' to simplify the above, like this:
+ +
---------------------------------------------------------------- ----------------------------------------------------------------
... hack hack hack ... ... hack hack hack ...

View File

@ -17,12 +17,12 @@ current HEAD commit, paths that have differences between the working
tree and the index file, and paths in the working tree that are not tree and the index file, and paths in the working tree that are not
tracked by git (and are not ignored by linkgit:gitignore[5]). The first tracked by git (and are not ignored by linkgit:gitignore[5]). The first
are what you _would_ commit by running `git commit`; the second and are what you _would_ commit by running `git commit`; the second and
third are what you _could_ commit by running `git-add` before running third are what you _could_ commit by running 'git-add' before running
`git commit`. `git commit`.


The command takes the same set of options as `git-commit`; it The command takes the same set of options as 'git-commit'; it
shows what would be committed if the same options are given to shows what would be committed if the same options are given to
`git-commit`. 'git-commit'.


If there is no path that is different between the index file and If there is no path that is different between the index file and
the current HEAD commit (i.e., there is nothing to commit by running the current HEAD commit (i.e., there is nothing to commit by running

View File

@ -32,11 +32,11 @@ add::
status:: status::
Show the status of the submodules. This will print the SHA-1 of the Show the status of the submodules. This will print the SHA-1 of the
currently checked out commit for each submodule, along with the currently checked out commit for each submodule, along with the
submodule path and the output of `git-describe` for the submodule path and the output of 'git-describe' for the
SHA-1. Each SHA-1 will be prefixed with `-` if the submodule is not SHA-1. Each SHA-1 will be prefixed with `-` if the submodule is not
initialized and `+` if the currently checked out submodule commit initialized and `+` if the currently checked out submodule commit
does not match the SHA-1 found in the index of the containing does not match the SHA-1 found in the index of the containing
repository. This command is the default command for `git-submodule`. repository. This command is the default command for 'git-submodule'.


init:: init::
Initialize the submodules, i.e. register in .git/config each submodule Initialize the submodules, i.e. register in .git/config each submodule

View File

@ -11,17 +11,17 @@ SYNOPSIS


DESCRIPTION DESCRIPTION
----------- -----------
`git-svn` is a simple conduit for changesets between Subversion and git. 'git-svn' is a simple conduit for changesets between Subversion and git.
It is not to be confused with linkgit:git-svnimport[1], which is It is not to be confused with linkgit:git-svnimport[1], which is
read-only. read-only.


`git-svn` was originally designed for an individual developer who wants a 'git-svn' was originally designed for an individual developer who wants a
bidirectional flow of changesets between a single branch in Subversion bidirectional flow of changesets between a single branch in Subversion
and an arbitrary number of branches in git. Since its inception, and an arbitrary number of branches in git. Since its inception,
`git-svn` has gained the ability to track multiple branches in a manner 'git-svn' has gained the ability to track multiple branches in a manner
similar to `git-svnimport`. similar to 'git-svnimport'.


`git-svn` is especially useful when it comes to tracking repositories 'git-svn' is especially useful when it comes to tracking repositories
not organized in the way Subversion developers recommend (trunk, not organized in the way Subversion developers recommend (trunk,
branches, tags directories). branches, tags directories).


@ -31,7 +31,7 @@ COMMANDS


'init':: 'init'::
Initializes an empty git repository with additional Initializes an empty git repository with additional
metadata directories for `git-svn`. The Subversion URL metadata directories for 'git-svn'. The Subversion URL
may be specified as a command-line argument, or as full may be specified as a command-line argument, or as full
URL arguments to -T/-t/-b. Optionally, the target URL arguments to -T/-t/-b. Optionally, the target
directory to operate on can be specified as a second directory to operate on can be specified as a second
@ -107,20 +107,20 @@ COMMANDS
This fetches revisions from the SVN parent of the current HEAD This fetches revisions from the SVN parent of the current HEAD
and rebases the current (uncommitted to SVN) work against it. and rebases the current (uncommitted to SVN) work against it.


This works similarly to `svn update` or `git-pull` except that This works similarly to `svn update` or 'git-pull' except that
it preserves linear history with `git-rebase` instead of it preserves linear history with 'git-rebase' instead of
`git-merge` for ease of dcommiting with `git-svn`. 'git-merge' for ease of dcommiting with 'git-svn'.


This accepts all options that `git-svn fetch` and `git-rebase` This accepts all options that 'git-svn fetch' and 'git-rebase'
accept. However, '--fetch-all' only fetches from the current accept. However, '--fetch-all' only fetches from the current
[svn-remote], and not all [svn-remote] definitions. [svn-remote], and not all [svn-remote] definitions.


Like `git-rebase`; this requires that the working tree be clean Like 'git-rebase'; this requires that the working tree be clean
and have no uncommitted changes. and have no uncommitted changes.


-l;; -l;;
--local;; --local;;
Do not fetch remotely; only run `git-rebase` against the Do not fetch remotely; only run 'git-rebase' against the
last fetched commit from the upstream SVN. last fetched commit from the upstream SVN.


'dcommit':: 'dcommit'::
@ -128,7 +128,7 @@ and have no uncommitted changes.
repository, and then rebase or reset (depending on whether or repository, and then rebase or reset (depending on whether or
not there is a diff between SVN and head). This will create not there is a diff between SVN and head). This will create
a revision in SVN for each commit in git. a revision in SVN for each commit in git.
It is recommended that you run `git-svn` fetch and rebase (not It is recommended that you run 'git-svn' fetch and rebase (not
pull or merge) your commits against the latest changes in the pull or merge) your commits against the latest changes in the
SVN repository. SVN repository.
An optional command-line argument may be specified as an An optional command-line argument may be specified as an
@ -173,7 +173,7 @@ NOTE: SVN itself only stores times in UTC and nothing else. The regular svn
client converts the UTC time to the local time (or based on the TZ= client converts the UTC time to the local time (or based on the TZ=
environment). This command has the same behaviour. environment). This command has the same behaviour.
+ +
Any other arguments are passed directly to `git-log` Any other arguments are passed directly to 'git-log'


'blame':: 'blame'::
Show what revision and author last modified each line of a file. The Show what revision and author last modified each line of a file. The
@ -181,10 +181,10 @@ Any other arguments are passed directly to `git-log`
`svn blame' by default. Like the SVN blame command, `svn blame' by default. Like the SVN blame command,
local uncommitted changes in the working copy are ignored; local uncommitted changes in the working copy are ignored;
the version of the file in the HEAD revision is annotated. Unknown the version of the file in the HEAD revision is annotated. Unknown
arguments are passed directly to `git-blame`. arguments are passed directly to 'git-blame'.
+ +
--git-format;; --git-format;;
Produce output in the same format as `git-blame`, but with Produce output in the same format as 'git-blame', but with
SVN revision numbers instead of git commit hashes. In this mode, SVN revision numbers instead of git commit hashes. In this mode,
changes that haven't been committed to SVN (including local changes that haven't been committed to SVN (including local
working-copy edits) are shown as revision 0. working-copy edits) are shown as revision 0.
@ -203,7 +203,7 @@ Any other arguments are passed directly to `git-log`
absolutely no attempts to do patching when committing to SVN, it absolutely no attempts to do patching when committing to SVN, it
simply overwrites files with those specified in the tree or simply overwrites files with those specified in the tree or
commit. All merging is assumed to have taken place commit. All merging is assumed to have taken place
independently of `git-svn` functions. independently of 'git-svn' functions.


'create-ignore':: 'create-ignore'::
Recursively finds the svn:ignore property on directories and Recursively finds the svn:ignore property on directories and
@ -219,12 +219,12 @@ Any other arguments are passed directly to `git-log`
'commit-diff':: 'commit-diff'::
Commits the diff of two tree-ish arguments from the Commits the diff of two tree-ish arguments from the
command-line. This command is intended for interoperability with command-line. This command is intended for interoperability with
`git-svnimport` and does not rely on being inside an `git-svn 'git-svnimport' and does not rely on being inside an `git-svn
init`-ed repository. This command takes three arguments, (a) the init`-ed repository. This command takes three arguments, (a) the
original tree to diff against, (b) the new tree result, (c) the original tree to diff against, (b) the new tree result, (c) the
URL of the target Subversion repository. The final argument URL of the target Subversion repository. The final argument
(URL) may be omitted if you are working from a `git-svn`-aware (URL) may be omitted if you are working from a 'git-svn'-aware
repository (that has been `init`-ed with `git-svn`). repository (that has been `init`-ed with 'git-svn').
The -r<revision> option is required for this. The -r<revision> option is required for this.


'info':: 'info'::
@ -255,7 +255,7 @@ OPTIONS
--shared[={false|true|umask|group|all|world|everybody}]:: --shared[={false|true|umask|group|all|world|everybody}]::
--template=<template_directory>:: --template=<template_directory>::
Only used with the 'init' command. Only used with the 'init' command.
These are passed directly to `git-init`. These are passed directly to 'git-init'.


-r <ARG>:: -r <ARG>::
--revision <ARG>:: --revision <ARG>::
@ -277,7 +277,7 @@ Only used with the 'set-tree' command.


Read a list of commits from stdin and commit them in reverse Read a list of commits from stdin and commit them in reverse
order. Only the leading sha1 is read from each line, so order. Only the leading sha1 is read from each line, so
`git-rev-list --pretty=oneline` output can be used. 'git-rev-list --pretty=oneline' output can be used.


--rmdir:: --rmdir::


@ -307,7 +307,7 @@ config key: svn.edit


Only used with the 'dcommit', 'set-tree' and 'commit-diff' commands. Only used with the 'dcommit', 'set-tree' and 'commit-diff' commands.


They are both passed directly to `git-diff-tree`; see They are both passed directly to 'git-diff-tree'; see
linkgit:git-diff-tree[1] for more information. linkgit:git-diff-tree[1] for more information.


[verse] [verse]
@ -317,24 +317,24 @@ config key: svn.findcopiesharder
-A<filename>:: -A<filename>::
--authors-file=<filename>:: --authors-file=<filename>::


Syntax is compatible with the files used by `git-svnimport` and Syntax is compatible with the files used by 'git-svnimport' and
`git-cvsimport`: 'git-cvsimport':


------------------------------------------------------------------------ ------------------------------------------------------------------------
loginname = Joe User <user@example.com> loginname = Joe User <user@example.com>
------------------------------------------------------------------------ ------------------------------------------------------------------------


If this option is specified and `git-svn` encounters an SVN If this option is specified and 'git-svn' encounters an SVN
committer name that does not exist in the authors-file, `git-svn` committer name that does not exist in the authors-file, 'git-svn'
will abort operation. The user will then have to add the will abort operation. The user will then have to add the
appropriate entry. Re-running the previous `git-svn` command appropriate entry. Re-running the previous 'git-svn' command
after the authors-file is modified should continue operation. after the authors-file is modified should continue operation.


config key: svn.authorsfile config key: svn.authorsfile


-q:: -q::
--quiet:: --quiet::
Make `git-svn` less verbose. Make 'git-svn' less verbose.


--repack[=<n>]:: --repack[=<n>]::
--repack-flags=<flags>:: --repack-flags=<flags>::
@ -346,7 +346,7 @@ with many revisions.
to fetch before repacking. This defaults to repacking every to fetch before repacking. This defaults to repacking every
1000 commits fetched if no argument is specified. 1000 commits fetched if no argument is specified.


--repack-flags are passed directly to `git-repack`. --repack-flags are passed directly to 'git-repack'.


[verse] [verse]
config key: svn.repack config key: svn.repack
@ -359,8 +359,8 @@ config key: svn.repackflags


These are only used with the 'dcommit' and 'rebase' commands. These are only used with the 'dcommit' and 'rebase' commands.


Passed directly to `git-rebase` when using 'dcommit' if a Passed directly to 'git-rebase' when using 'dcommit' if a
`git-reset` cannot be used (see 'dcommit'). 'git-reset' cannot be used (see 'dcommit').


-n:: -n::
--dry-run:: --dry-run::
@ -413,18 +413,18 @@ svn-remote.<name>.noMetadata::


This gets rid of the 'git-svn-id:' lines at the end of every commit. This gets rid of the 'git-svn-id:' lines at the end of every commit.


If you lose your .git/svn/git-svn/.rev_db file, `git-svn` will not If you lose your .git/svn/git-svn/.rev_db file, 'git-svn' will not
be able to rebuild it and you won't be able to fetch again, be able to rebuild it and you won't be able to fetch again,
either. This is fine for one-shot imports. either. This is fine for one-shot imports.


The `git-svn log` command will not work on repositories using The 'git-svn log' command will not work on repositories using
this, either. Using this conflicts with the 'useSvmProps' this, either. Using this conflicts with the 'useSvmProps'
option for (hopefully) obvious reasons. option for (hopefully) obvious reasons.


svn.useSvmProps:: svn.useSvmProps::
svn-remote.<name>.useSvmProps:: svn-remote.<name>.useSvmProps::


This allows `git-svn` to re-map repository URLs and UUIDs from This allows 'git-svn' to re-map repository URLs and UUIDs from
mirrors created using SVN::Mirror (or svk) for metadata. mirrors created using SVN::Mirror (or svk) for metadata.


If an SVN revision has a property, "svm:headrev", it is likely If an SVN revision has a property, "svm:headrev", it is likely
@ -443,7 +443,7 @@ svn-remote.<name>.useSvnsyncprops::


svn-remote.<name>.rewriteRoot:: svn-remote.<name>.rewriteRoot::
This allows users to create repositories from alternate This allows users to create repositories from alternate
URLs. For example, an administrator could run `git-svn` on the URLs. For example, an administrator could run 'git-svn' on the
server locally (accessing via file://) but wish to distribute server locally (accessing via file://) but wish to distribute
the repository with a public http:// or svn:// URL in the the repository with a public http:// or svn:// URL in the
metadata so users of it will see the public URL. metadata so users of it will see the public URL.
@ -451,7 +451,7 @@ svn-remote.<name>.rewriteRoot::
-- --


Since the noMetadata, rewriteRoot, useSvnsyncProps and useSvmProps Since the noMetadata, rewriteRoot, useSvnsyncProps and useSvmProps
options all affect the metadata generated and used by `git-svn`; they options all affect the metadata generated and used by 'git-svn'; they
*must* be set in the configuration file before any history is imported *must* be set in the configuration file before any history is imported
and these settings should never be changed once they are set. and these settings should never be changed once they are set.


@ -498,12 +498,12 @@ Tracking and contributing to an entire Subversion-managed project
# of dcommit/rebase/show-ignore should be the same as above. # of dcommit/rebase/show-ignore should be the same as above.
------------------------------------------------------------------------ ------------------------------------------------------------------------


The initial `git-svn clone` can be quite time-consuming The initial 'git-svn clone' can be quite time-consuming
(especially for large Subversion repositories). If multiple (especially for large Subversion repositories). If multiple
people (or one person with multiple machines) want to use people (or one person with multiple machines) want to use
`git-svn` to interact with the same Subversion repository, you can 'git-svn' to interact with the same Subversion repository, you can
do the initial `git-svn clone` to a repository on a server and do the initial 'git-svn clone' to a repository on a server and
have each person clone that repository with `git-clone`: have each person clone that repository with 'git-clone':


------------------------------------------------------------------------ ------------------------------------------------------------------------
# Do the initial import on a server # Do the initial import on a server
@ -524,7 +524,7 @@ have each person clone that repository with `git-clone`:
REBASE VS. PULL/MERGE REBASE VS. PULL/MERGE
--------------------- ---------------------


Originally, `git-svn` recommended that the 'remotes/git-svn' branch be Originally, 'git-svn' recommended that the 'remotes/git-svn' branch be
pulled or merged from. This is because the author favored pulled or merged from. This is because the author favored
`git svn set-tree B` to commit a single head rather than the `git svn set-tree B` to commit a single head rather than the
`git svn set-tree A..B` notation to commit multiple commits. `git svn set-tree A..B` notation to commit multiple commits.
@ -539,7 +539,7 @@ previous commits in SVN.
DESIGN PHILOSOPHY DESIGN PHILOSOPHY
----------------- -----------------
Merge tracking in Subversion is lacking and doing branched development Merge tracking in Subversion is lacking and doing branched development
with Subversion can be cumbersome as a result. While `git-svn` can track with Subversion can be cumbersome as a result. While 'git-svn' can track
copy history (including branches and tags) for repositories adopting a copy history (including branches and tags) for repositories adopting a
standard layout, it cannot yet represent merge history that happened standard layout, it cannot yet represent merge history that happened
inside git back upstream to SVN users. Therefore it is advised that inside git back upstream to SVN users. Therefore it is advised that
@ -550,25 +550,25 @@ CAVEATS
------- -------


For the sake of simplicity and interoperating with a less-capable system For the sake of simplicity and interoperating with a less-capable system
(SVN), it is recommended that all `git-svn` users clone, fetch and dcommit (SVN), it is recommended that all 'git-svn' users clone, fetch and dcommit
directly from the SVN server, and avoid all `git-clone`/`pull`/`merge`/`push` directly from the SVN server, and avoid all 'git-clone'/`pull`/`merge`/`push`
operations between git repositories and branches. The recommended operations between git repositories and branches. The recommended
method of exchanging code between git branches and users is method of exchanging code between git branches and users is
`git-format-patch` and `git-am`, or just 'dcommit'ing to the SVN repository. 'git-format-patch' and 'git-am', or just 'dcommit'ing to the SVN repository.


Running `git-merge` or `git-pull` is NOT recommended on a branch you Running 'git-merge' or 'git-pull' is NOT recommended on a branch you
plan to 'dcommit' from. Subversion does not represent merges in any plan to 'dcommit' from. Subversion does not represent merges in any
reasonable or useful fashion; so users using Subversion cannot see any reasonable or useful fashion; so users using Subversion cannot see any
merges you've made. Furthermore, if you merge or pull from a git branch merges you've made. Furthermore, if you merge or pull from a git branch
that is a mirror of an SVN branch, 'dcommit' may commit to the wrong that is a mirror of an SVN branch, 'dcommit' may commit to the wrong
branch. branch.


`git-clone` does not clone branches under the refs/remotes/ hierarchy or 'git-clone' does not clone branches under the refs/remotes/ hierarchy or
any `git-svn` metadata, or config. So repositories created and managed with any 'git-svn' metadata, or config. So repositories created and managed with
using `git-svn` should use `rsync` for cloning, if cloning is to be done using 'git-svn' should use `rsync` for cloning, if cloning is to be done
at all. at all.


Since 'dcommit' uses rebase internally, any git branches you `git-push` to Since 'dcommit' uses rebase internally, any git branches you 'git-push' to
before 'dcommit' on will require forcing an overwrite of the existing ref before 'dcommit' on will require forcing an overwrite of the existing ref
on the remote repository. This is generally considered bad practice, on the remote repository. This is generally considered bad practice,
see the linkgit:git-push[1] documentation for details. see the linkgit:git-push[1] documentation for details.
@ -594,7 +594,7 @@ for git to detect them.
CONFIGURATION CONFIGURATION
------------- -------------


`git-svn` stores [svn-remote] configuration information in the 'git-svn' stores [svn-remote] configuration information in the
repository .git/config file. It is similar the core git repository .git/config file. It is similar the core git
[remote] sections except 'fetch' keys do not accept glob [remote] sections except 'fetch' keys do not accept glob
arguments; but they are instead handled by the 'branches' arguments; but they are instead handled by the 'branches'
@ -615,7 +615,7 @@ Keep in mind that the '*' (asterisk) wildcard of the local ref
however the remote wildcard may be anywhere as long as it's own however the remote wildcard may be anywhere as long as it's own
independent path component (surrounded by '/' or EOL). This independent path component (surrounded by '/' or EOL). This
type of configuration is not automatically created by 'init' and type of configuration is not automatically created by 'init' and
should be manually entered with a text-editor or using `git-config`. should be manually entered with a text-editor or using 'git-config'.


SEE ALSO SEE ALSO
-------- --------

View File

@ -49,7 +49,7 @@ cumbersome. On some platforms, `ln -sf` does not even work as
advertised (horrors). Therefore symbolic links are now deprecated advertised (horrors). Therefore symbolic links are now deprecated
and symbolic refs are used by default. and symbolic refs are used by default.


`git-symbolic-ref` will exit with status 0 if the contents of the 'git-symbolic-ref' will exit with status 0 if the contents of the
symbolic ref were printed correctly, with status 1 if the requested symbolic ref were printed correctly, with status 1 if the requested
name is not a symbolic ref, or 128 if another error occurs. name is not a symbolic ref, or 128 if another error occurs.



View File

@ -82,7 +82,7 @@ OPTIONS


CONFIGURATION CONFIGURATION
------------- -------------
By default, `git-tag` in sign-with-default mode (-s) will use your By default, 'git-tag' in sign-with-default mode (-s) will use your
committer identity (of the form "Your Name <your@email.address>") to committer identity (of the form "Your Name <your@email.address>") to
find a key. If you want to use a different default key, you can specify find a key. If you want to use a different default key, you can specify
it in the repository configuration as follows: it in the repository configuration as follows:
@ -118,12 +118,12 @@ and be done with it.


. The insane thing. . The insane thing.
You really want to call the new version "X" too, 'even though' You really want to call the new version "X" too, 'even though'
others have already seen the old one. So just use `git-tag -f` others have already seen the old one. So just use 'git-tag -f'
again, as if you hadn't already published the old one. again, as if you hadn't already published the old one.


However, Git does *not* (and it should not) change tags behind However, Git does *not* (and it should not) change tags behind
users back. So if somebody already got the old tag, doing a users back. So if somebody already got the old tag, doing a
`git-pull` on your tree shouldn't just make them overwrite the old 'git-pull' on your tree shouldn't just make them overwrite the old
one. one.


If somebody got a release tag from you, you cannot just change If somebody got a release tag from you, you cannot just change
@ -177,7 +177,7 @@ private anchor point tags from the other person.


You would notice "please pull" messages on the mailing list says You would notice "please pull" messages on the mailing list says
repo URL and branch name alone. This is designed to be easily repo URL and branch name alone. This is designed to be easily
cut&pasted to a `git-fetch` command line: cut&pasted to a 'git-fetch' command line:


------------ ------------
Linus, please pull from Linus, please pull from

View File

@ -12,19 +12,19 @@ SYNOPSIS


DESCRIPTION DESCRIPTION
----------- -----------
THIS COMMAND IS DEPRECATED. Use `git-archive` with `--format=tar` THIS COMMAND IS DEPRECATED. Use 'git-archive' with `--format=tar`
option instead (and move the <base> argument to `--prefix=base/`). option instead (and move the <base> argument to `--prefix=base/`).


Creates a tar archive containing the tree structure for the named tree. Creates a tar archive containing the tree structure for the named tree.
When <base> is specified it is added as a leading path to the files in the When <base> is specified it is added as a leading path to the files in the
generated tar archive. generated tar archive.


`git-tar-tree` behaves differently when given a tree ID versus when given 'git-tar-tree' behaves differently when given a tree ID versus when given
a commit ID or tag ID. In the first case the current time is used as a commit ID or tag ID. In the first case the current time is used as
modification time of each file in the archive. In the latter case the modification time of each file in the archive. In the latter case the
commit time as recorded in the referenced commit object is used instead. commit time as recorded in the referenced commit object is used instead.
Additionally the commit ID is stored in a global extended pax header. Additionally the commit ID is stored in a global extended pax header.
It can be extracted using `git-get-tar-commit-id`. It can be extracted using 'git-get-tar-commit-id'.


OPTIONS OPTIONS
------- -------

View File

@ -31,7 +31,7 @@ cleared.
See also linkgit:git-add[1] for a more user-friendly way to do some of See also linkgit:git-add[1] for a more user-friendly way to do some of
the most common operations on the index. the most common operations on the index.


The way `git-update-index` handles files it is told about can be modified The way 'git-update-index' handles files it is told about can be modified
using the various options: using the various options:


OPTIONS OPTIONS
@ -53,7 +53,7 @@ OPTIONS
-q:: -q::
Quiet. If --refresh finds that the index needs an update, the Quiet. If --refresh finds that the index needs an update, the
default behavior is to error out. This option makes default behavior is to error out. This option makes
`git-update-index` continue anyway. 'git-update-index' continue anyway.


--ignore-submodules: --ignore-submodules:
Do not try to update submodules. This option is only respected Do not try to update submodules. This option is only respected
@ -61,7 +61,7 @@ OPTIONS


--unmerged:: --unmerged::
If --refresh finds unmerged changes in the index, the default If --refresh finds unmerged changes in the index, the default
behavior is to error out. This option makes `git-update-index` behavior is to error out. This option makes 'git-update-index'
continue anyway. continue anyway.


--ignore-missing:: --ignore-missing::
@ -91,7 +91,7 @@ OPTIONS


-g:: -g::
--again:: --again::
Runs `git-update-index` itself on the paths whose index Runs 'git-update-index' itself on the paths whose index
entries are different from those from the `HEAD` commit. entries are different from those from the `HEAD` commit.


--unresolve:: --unresolve::
@ -109,7 +109,7 @@ OPTIONS


--replace:: --replace::
By default, when a file `path` exists in the index, By default, when a file `path` exists in the index,
`git-update-index` refuses an attempt to add `path/file`. 'git-update-index' refuses an attempt to add `path/file`.
Similarly if a file `path/file` exists, a file `path` Similarly if a file `path/file` exists, a file `path`
cannot be added. With --replace flag, existing entries cannot be added. With --replace flag, existing entries
that conflicts with the entry being added are that conflicts with the entry being added are
@ -145,7 +145,7 @@ up-to-date for mode/content changes. But what it *does* do is to
can refresh the index for a file that hasn't been changed but where can refresh the index for a file that hasn't been changed but where
the stat entry is out of date. the stat entry is out of date.


For example, you'd want to do this after doing a `git-read-tree`, to link 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. up the stat index details with the proper files.


Using --cacheinfo or --info-only Using --cacheinfo or --info-only
@ -186,13 +186,13 @@ back on 3-way merge.


. mode SP type SP sha1 TAB path . mode SP type SP sha1 TAB path
+ +
The second format is to stuff `git-ls-tree` output The second format is to stuff 'git-ls-tree' output
into the index file. into the index file.


. mode SP sha1 SP stage TAB path . mode SP sha1 SP stage TAB path
+ +
This format is to put higher order stages into the This format is to put higher order stages into the
index file and matches `git-ls-files --stage` output. index file and matches 'git-ls-files --stage' output.


To place a higher stage entry to the index, the path should To place a higher stage entry to the index, the path should
first be removed by feeding a mode=0 entry for the path, and first be removed by feeding a mode=0 entry for the path, and
@ -249,8 +249,8 @@ option. To unset, use `--no-assume-unchanged`.
The command looks at `core.ignorestat` configuration variable. When The command looks at `core.ignorestat` configuration variable. When
this is true, paths updated with `git update-index paths...` and this is true, paths updated with `git update-index paths...` and
paths updated with other git commands that update both index and paths updated with other git commands that update both index and
working tree (e.g. `git-apply --index`, `git-checkout-index -u`, working tree (e.g. 'git-apply --index', 'git-checkout-index -u',
and `git-read-tree -u`) are automatically marked as "assume and 'git-read-tree -u') are automatically marked as "assume
unchanged". Note that "assume unchanged" bit is *not* set if unchanged". Note that "assume unchanged" bit is *not* set if
`git update-index --refresh` finds the working tree file matches `git update-index --refresh` finds the working tree file matches
the index (use `git update-index --really-refresh` if you want the index (use `git update-index --really-refresh` if you want
@ -303,7 +303,7 @@ unreliable, this should be set to 'false' (see linkgit:git-config[1]).
This causes the command to ignore differences in file modes recorded This causes the command to ignore differences in file modes recorded
in the index and the file mode on the filesystem if they differ only on in the index and the file mode on the filesystem if they differ only on
executable bit. On such an unfortunate filesystem, you may executable bit. On such an unfortunate filesystem, you may
need to use `git-update-index --chmod=`. need to use 'git-update-index --chmod='.


Quite similarly, if `core.symlinks` configuration variable is set Quite similarly, if `core.symlinks` configuration variable is set
to 'false' (see linkgit:git-config[1]), symbolic links are checked out to 'false' (see linkgit:git-config[1]), symbolic links are checked out

View File

@ -16,7 +16,7 @@ Invoked by 'git-archive --remote' and sends a generated archive to the
other end over the git protocol. other end over the git protocol.


This command is usually not invoked directly by the end user. The UI This command is usually not invoked directly by the end user. The UI
for the protocol is on the `git-archive` side, and the program pair for the protocol is on the 'git-archive' side, and the program pair
is meant to be used to get an archive from a remote repository. is meant to be used to get an archive from a remote repository.


OPTIONS OPTIONS

View File

@ -12,13 +12,13 @@ SYNOPSIS


DESCRIPTION DESCRIPTION
----------- -----------
Invoked by `git-fetch-pack`, learns what Invoked by 'git-fetch-pack', learns what
objects the other side is missing, and sends them after packing. objects the other side is missing, and sends them after packing.


This command is usually not invoked directly by the end user. This command is usually not invoked directly by the end user.
The UI for the protocol is on the `git-fetch-pack` side, and the The UI for the protocol is on the 'git-fetch-pack' side, and the
program pair is meant to be used to pull updates from a remote program pair is meant to be used to pull updates from a remote
repository. For push operations, see `git-send-pack`. repository. For push operations, see 'git-send-pack'.




OPTIONS OPTIONS

View File

@ -20,7 +20,7 @@ OPTIONS
Cause the logical variables to be listed. In addition, all the Cause the logical variables to be listed. In addition, all the
variables of the git configuration file .git/config are listed variables of the git configuration file .git/config are listed
as well. (However, the configuration variables listing functionality as well. (However, the configuration variables listing functionality
is deprecated in favor of `git-config -l`.) is deprecated in favor of 'git-config -l'.)


EXAMPLE EXAMPLE
-------- --------

View File

@ -14,7 +14,7 @@ SYNOPSIS
DESCRIPTION DESCRIPTION
----------- -----------
Reads given idx file for packed git archive created with the Reads given idx file for packed git archive created with the
`git-pack-objects` command and verifies idx file and the 'git-pack-objects' command and verifies idx file and the
corresponding pack file. corresponding pack file.


OPTIONS OPTIONS

View File

@ -11,7 +11,7 @@ SYNOPSIS


DESCRIPTION DESCRIPTION
----------- -----------
Validates the gpg signature created by `git-tag`. Validates the gpg signature created by 'git-tag'.


OPTIONS OPTIONS
------- -------

View File

@ -61,7 +61,7 @@ browser.<tool>.path
You can explicitly provide a full path to your preferred browser by You can explicitly provide a full path to your preferred browser by
setting the configuration variable 'browser.<tool>.path'. For example, setting the configuration variable 'browser.<tool>.path'. For example,
you can configure the absolute path to firefox by setting you can configure the absolute path to firefox by setting
'browser.firefox.path'. Otherwise, `git-web--browse` assumes the tool 'browser.firefox.path'. Otherwise, 'git-web--browse' assumes the tool
is available in PATH. is available in PATH.


browser.<tool>.cmd browser.<tool>.cmd
@ -70,7 +70,7 @@ browser.<tool>.cmd
When the browser, specified by options or configuration variables, is When the browser, specified by options or configuration variables, is
not among the supported ones, then the corresponding not among the supported ones, then the corresponding
'browser.<tool>.cmd' configuration variable will be looked up. If this 'browser.<tool>.cmd' configuration variable will be looked up. If this
variable exists then `git-web--browse` will treat the specified tool variable exists then 'git-web--browse' will treat the specified tool
as a custom command and will use a shell eval to run the command with as a custom command and will use a shell eval to run the command with
the URLs passed as arguments. the URLs passed as arguments.


@ -112,7 +112,7 @@ See linkgit:git-config[1] for more information about this.
Author Author
------ ------
Written by Christian Couder <chriscool@tuxfamily.org> and the git-list Written by Christian Couder <chriscool@tuxfamily.org> and the git-list
<git@vger.kernel.org>, based on `git-mergetool` by Theodore Y. Ts'o. <git@vger.kernel.org>, based on 'git-mergetool' by Theodore Y. Ts'o.


Documentation Documentation
------------- -------------

Some files were not shown because too many files have changed in this diff Show More