Merge branch 'jc/strcasecmp-pure-inline'
[gitweb.git] / Documentation / git.txt
index c4f0ed59576b877a5eab2e36aa874d8c572bb905..5d68d33e46587deb785317a213857f0de5371022 100644 (file)
@@ -9,7 +9,7 @@ git - the stupid content tracker
 SYNOPSIS
 --------
 [verse]
-'git' [--version] [--help] [-c <name>=<value>]
+'git' [--version] [--help] [-C <path>] [-c <name>=<value>]
     [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
     [-p|--paginate|--no-pager] [--no-replace-objects] [--bare]
     [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
@@ -395,6 +395,20 @@ displayed. See linkgit:git-help[1] for more information,
 because `git --help ...` is converted internally into `git
 help ...`.
 
+-C <path>::
+       Run as if git was started in '<path>' instead of the current working
+       directory.  When multiple `-C` options are given, each subsequent
+       non-absolute `-C <path>` is interpreted relative to the preceding `-C
+       <path>`.
++
+This option affects options that expect path name like `--git-dir` and
+`--work-tree` in that their interpretations of the path names would be
+made relative to the working directory caused by the `-C` option. For
+example the following invocations are equivalent:
+
+    git --git-dir=a.git --work-tree=b -C c status
+    git --git-dir=c/a.git --work-tree=c/b status
+
 -c <name>=<value>::
        Pass a configuration parameter to the command. The value
        given will override values from configuration files.