git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] Documentation: Link git-ls-files to core.quotePath variable.

From
Junio C Hamano <gitster@pobox.com>
Date
Feb 22, 2017, 21:02 UTC
Message-ID
<xmqqh93maqgw.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<F71515D0E29940CA9C421D18480AD726@PhilipOakley>
"Philip Oakley" <philipoakley@iee.org> writes:
Show 7 quoted lines
>> -When `-z` option is not used, TAB, LF, and backslash characters
>> -in pathnames are represented as `\t`, `\n`, and `\\`,
>> -respectively. The path is also quoted according to the
>> -configuration variable `core.quotePath` (see linkgit:git-config[1]).
>> +Without the `-z` option pathnamens with "unusual" characters are
>
> s/option pathnamens/option, pathnames/    # comma and spelling.

Thanks. Will squash it in while queuing (I need to discard the new text added in the previous attempt in the preimage to make it apply, too).

-- >8 --
From: Andreas Heiduk <asheiduk@gmail.com>
Date: Wed, 22 Feb 2017 02:38:21 +0100
Subject: [PATCH] Documentation: clarify core.quotePath and update git-ls-files doc
Signed-off-by: Andreas Heiduk <asheiduk@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 Documentation/config.txt       | 22 ++++++++++++----------
 Documentation/git-ls-files.txt | 10 ++++++----
 2 files changed, 18 insertions(+), 14 deletions(-)
diff --git a/Documentation/config.txt b/Documentation/config.txt
index f4721a048b..25e65aeb01 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -340,16 +340,18 @@ core.checkStat::
 	all fields, including the sub-second part of mtime and ctime.
 
 core.quotePath::
-	The commands that output paths (e.g. 'ls-files',
-	'diff'), when not given the `-z` option, will quote
-	"unusual" characters in the pathname by enclosing the
-	pathname in a double-quote pair and with backslashes the
-	same way strings in C source code are quoted.  If this
-	variable is set to false, the bytes higher than 0x80 are
-	not quoted but output as verbatim.  Note that double
-	quote, backslash and control characters are always
-	quoted without `-z` regardless of the setting of this
-	variable.
+	Commands that output paths (e.g. 'ls-files', 'diff'), will
+	quote "unusual" characters in the pathname by enclosing the
+	pathname in double-quotes and escaping those characters with
+	backslashes in the same way C escapes control characters (e.g.
+	`\t` for TAB, `\n` for LF, `\\` for backslash) or bytes with
+	values larger than 0x80 (e.g. octal `\265` for "micro").  If
+	this variable is set to false, bytes higher than 0x80 are not
+	considered "unusual" any more.  Double-quotes, backslash and
+	control characters are always escaped regardless of the
+	setting of this variable.  Many commands can output pathnames
+	completely verbatim using the `-z` option. The default value is
+	true.
 
 core.eol::
 	Sets the line ending type to use in the working directory for
diff --git a/Documentation/git-ls-files.txt b/Documentation/git-ls-files.txt
index 078b556665..a415223b45 100644
--- a/Documentation/git-ls-files.txt
+++ b/Documentation/git-ls-files.txt
@@ -76,7 +76,8 @@ OPTIONS
 	succeed.
 
 -z::
-	\0 line termination on output.
+	\0 line termination on output and do not quote filenames.
+	See OUTPUT below for more information.
 
 -x <pattern>::
 --exclude=<pattern>::
@@ -192,9 +193,10 @@ the index records up to three such pairs; one from tree O in stage
 the user (or the porcelain) to see what should eventually be recorded at the
 path. (see linkgit:git-read-tree[1] for more information on state)
 
-When `-z` option is not used, TAB, LF, and backslash characters
-in pathnames are represented as `\t`, `\n`, and `\\`,
-respectively.
+Without the `-z` option, pathnames with "unusual" characters are
+quoted as explained for the configuration variable `core.quotePath`
+(see linkgit:git-config[1]).  Using `-z` the filename is output
+verbatim and the line is terminated by a NUL byte.
 
 
 Exclude Patterns
-- 
2.12.0-rc2-250-gd33575c7f2
Previous: Philip OakleyNext: Andreas Heiduk
Message 7 of 18 in “Documentation: Link git-ls-files to core.quotePath variable.”
  1. Documentation: Link git-ls-files to core.quotePath variable.Andreas Heiduk, Feb 19, 2017
  2. Junio C HamanoFeb 21, 2017
  3. Andreas HeidukFeb 22, 2017
  4. Andreas HeidukFeb 22, 2017
  5. Junio C HamanoFeb 22, 2017
  6. Philip OakleyFeb 22, 2017
  7. Junio C HamanoFeb 22, 2017
  8. Andreas HeidukFeb 22, 2017
  9. 0/2 Documentation: Link git-ls-files to core.quotePath variable.Andreas Heiduk, Feb 24, 2017
  10. 1/2 Documentation: Improve description for core.quotePathAndreas Heiduk, Feb 24, 2017
  11. Jakub NarębskiFeb 24, 2017
  12. Andreas HeidukFeb 28, 2017
  13. 2/2 Documentation: Link descriptions of -z to core.quotePathAndreas Heiduk, Feb 24, 2017
  14. Jakub NarębskiFeb 24, 2017
  15. Andreas HeidukFeb 28, 2017
  16. Junio C HamanoFeb 28, 2017
  17. Andreas HeidukFeb 28, 2017
  18. Junio C HamanoFeb 28, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.