Code

vcs-svn: parse svndiff0 window header
[git.git] / Documentation / config.txt
index a8759cff804c98a7f4d13634ce8775edd2315a0d..c5e183516a104e6efb7ed597fb4498d75560ab68 100644 (file)
@@ -317,17 +317,26 @@ false), while all other repositories are assumed to be bare (bare
 = true).
 
 core.worktree::
-       Set the path to the working tree.  The value will not be
-       used in combination with repositories found automatically in
-       a .git directory (i.e. $GIT_DIR is not set).
+       Set the path to the root of the working tree.
        This can be overridden by the GIT_WORK_TREE environment
-       variable and the '--work-tree' command line option. It can be
-       an absolute path or relative path to the directory specified by
-       --git-dir or GIT_DIR.
-       Note: If --git-dir or GIT_DIR are specified but none of
+       variable and the '--work-tree' command line option.
+       The value can an absolute path or relative to the path to
+       the .git directory, which is either specified by --git-dir
+       or GIT_DIR, or automatically discovered.
+       If --git-dir or GIT_DIR is specified but none of
        --work-tree, GIT_WORK_TREE and core.worktree is specified,
-       the current working directory is regarded as the top directory
+       the current working directory is regarded as the top level
        of your working tree.
++
+Note that this variable is honored even when set in a configuration
+file in a ".git" subdirectory of a directory and its value differs
+from the latter directory (e.g. "/path/to/.git/config" has
+core.worktree set to "/different/path"), which is most likely a
+misconfiguration.  Running git commands in the "/path/to" directory will
+still use "/different/path" as the root of the work tree and can cause
+confusion unless you know what you are doing (e.g. you are creating a
+read-only snapshot of the same index to a location different from the
+repository's usual working tree).
 
 core.logAllRefUpdates::
        Enable the reflog. Updates to a ref <ref> is logged to the file
@@ -892,7 +901,7 @@ diff.wordRegex::
 
 fetch.recurseSubmodules::
        A boolean value which changes the behavior for fetch and pull, the
-       default is to not recursively fetch populated sumodules unless
+       default is to not recursively fetch populated submodules unless
        configured otherwise.
 
 fetch.unpackLimit::
@@ -1811,7 +1820,7 @@ submodule.<name>.update::
 
 submodule.<name>.fetchRecurseSubmodules::
        This option can be used to enable/disable recursive fetching of this
-       submodule. It can be overriden by using the --[no-]recurse-submodules
+       submodule. It can be overridden by using the --[no-]recurse-submodules
        command line option to "git fetch" and "git pull".
        This setting will override that from in the linkgit:gitmodules[5]
        file.