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

[PATCH] Teach git-ls-files about '--' to denote end of options.

From
Fredrik Kuivinen <freku045@student.liu.se>
Date
Oct 2, 2005, 15:33 UTC
Message-ID
<20051002153338.GA1685@c165.ib.student.liu.se>
Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
---
 Documentation/git-ls-files.txt |    9 ++++++++-
 ls-files.c                     |    5 ++++-
 2 files changed, 12 insertions(+), 2 deletions(-)
1d1f81648fe42497daff2e95320698fa22ca6440
diff --git a/Documentation/git-ls-files.txt b/Documentation/git-ls-files.txt
--- a/Documentation/git-ls-files.txt
+++ b/Documentation/git-ls-files.txt
@@ -13,7 +13,7 @@ SYNOPSIS
 		(-[c|d|o|i|s|u|k|m])\*
 		[-x <pattern>|--exclude=<pattern>]
 		[-X <file>|--exclude-from=<file>]
-		[--exclude-per-directory=<file>]
+		[--exclude-per-directory=<file>] [--] [<file>]\*
 
 DESCRIPTION
 -----------
@@ -77,6 +77,13 @@ OPTIONS
 	K	to be killed
 	?	other
 
+--::
+	Do not interpret any more arguments as options.
+
+<file>:: 
+	Files to show. If no files are given all files which match the other
+	specified criteria are shown.
+
 Output
 ------
 show files just outputs the filename unless '--stage' is specified in
diff --git a/ls-files.c b/ls-files.c
--- a/ls-files.c
+++ b/ls-files.c
@@ -530,7 +530,7 @@ static void verify_pathspec(void)
 static const char ls_files_usage[] =
 	"git-ls-files [-z] [-t] (--[cached|deleted|others|stage|unmerged|killed|modified])* "
 	"[ --ignored ] [--exclude=<pattern>] [--exclude-from=<file>] "
-	"[ --exclude-per-directory=<filename> ]";
+	"[ --exclude-per-directory=<filename> ] [--] [<file>]*";
 
 int main(int argc, const char **argv)
 {
@@ -544,6 +544,9 @@ int main(int argc, const char **argv)
 	for (i = 1; i < argc; i++) {
 		const char *arg = argv[i];
 
+		if (!strcmp(arg, "--")) {
+			break;
+		}
 		if (!strcmp(arg, "-z")) {
 			line_terminator = 0;
 			continue;
Message 1 of 1 in “Teach git-ls-files about '--' to denote end of options.”
  1. Teach git-ls-files about '--' to denote end of options.Fredrik Kuivinen, Oct 2, 2005

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.