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

[PATCH 2/3] ls-files: support -o --max-depth (more of a hack as fill_directory should support this)

From
Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Date
Jan 7, 2010, 17:07 UTC
Message-ID
<1262884076-12293-3-git-send-email-pclouds@gmail.com>
In-Reply-To
<1262884076-12293-1-git-send-email-pclouds@gmail.com>
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
---
 builtin-ls-files.c |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/builtin-ls-files.c b/builtin-ls-files.c
index 2bb851a..e16638e 100644
--- a/builtin-ls-files.c
+++ b/builtin-ls-files.c
@@ -51,6 +51,17 @@ static void show_dir_entry(const char *tag, struct dir_entry *ent)
 	if (!match_pathspec(pathspec, ent->name, ent->len, len, ps_matched))
 		return;
 
+	if (max_depth) {
+		int slashes = 0;
+		const char *entry = ent->name + prefix_offset;
+		while ((entry = strchr(entry, '/')) != NULL) {
+			slashes++;
+			if (slashes >= max_depth)
+				return;
+			entry++;
+		}
+	}
+
 	fputs(tag, stdout);
 	write_name_quoted(ent->name + offset, stdout, line_terminator);
 }
-- 
1.6.6.315.g1a406
Previous: Nguyễn Thái Ngọc DuyNext: Junio C Hamano
Message 3 of 13 in “Bringing git-ls-files to porcelain level”
  1. 0/3 Bringing git-ls-files to porcelain levelNguyễn Thái Ngọc Duy, Jan 7, 2010
  2. 1/3 ls-files: support --max-depthNguyễn Thái Ngọc Duy, Jan 7, 2010
  3. 2/3 ls-files: support -o --max-depth (more of a hack as fill_directory should support this)Nguyễn Thái Ngọc Duy, Jan 7, 2010
  4. Junio C HamanoJan 7, 2010
  5. 3/3 Add "ls", which is basically ls-files with user-friendly settingsNguyễn Thái Ngọc Duy, Jan 7, 2010
  6. Junio C HamanoJan 7, 2010
  7. Nguyen Thai Ngoc DuyJan 7, 2010
  8. Nguyen Thai Ngoc DuyJan 8, 2010
  9. Matthieu MoyJan 7, 2010
  10. Matthieu MoyJan 7, 2010
  11. Nguyen Thai Ngoc DuyJan 7, 2010
  12. Kan-Ru ChenNov 1, 2010
  13. Nguyen Thai Ngoc DuyNov 1, 2010

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.