diff options
author | Junio C Hamano <gitster@pobox.com> | 2009-01-28 23:42:15 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2009-01-28 23:42:15 -0800 |
commit | 32fe02793193c309fb9739b24d8450caab80783f (patch) | |
tree | ca8943d89250b664813ce5b8fa15f0e24741429d | |
parent | 8e7d1f6d0300b47770930b82a5fc20fec73727c4 (diff) | |
parent | e1a59774077e21fc9862a968440dd23003345b4a (diff) | |
download | git-32fe02793193c309fb9739b24d8450caab80783f.tar.gz git-32fe02793193c309fb9739b24d8450caab80783f.tar.xz |
Merge branch 'jc/maint-ls-tree' into maint
* jc/maint-ls-tree:
Document git-ls-tree --full-tree
ls-tree: add --full-tree option
-rw-r--r-- | Documentation/git-ls-tree.txt | 8 | ||||
-rw-r--r-- | builtin-ls-tree.c | 7 |
2 files changed, 13 insertions, 2 deletions
diff --git a/Documentation/git-ls-tree.txt b/Documentation/git-ls-tree.txt index 4c7262f1c..db6ebccd6 100644 --- a/Documentation/git-ls-tree.txt +++ b/Documentation/git-ls-tree.txt @@ -10,7 +10,7 @@ SYNOPSIS -------- [verse] 'git ls-tree' [-d] [-r] [-t] [-l] [-z] - [--name-only] [--name-status] [--full-name] [--abbrev=[<n>]] + [--name-only] [--name-status] [--full-name] [--full-tree] [--abbrev=[<n>]] <tree-ish> [paths...] DESCRIPTION @@ -30,6 +30,8 @@ in the current working directory. Note that: 'sub/dir' in 'HEAD'). You don't want to give a tree that is not at the root level (e.g. 'git ls-tree -r HEAD:sub dir') in this case, as that would result in asking for 'sub/sub/dir' in the 'HEAD' commit. + However, the current working directory can be ignored by passing + --full-tree option. OPTIONS ------- @@ -66,6 +68,10 @@ OPTIONS Instead of showing the path names relative to the current working directory, show the full path names. +--full-tree:: + Do not limit the listing to the current working directory. + Implies --full-name. + paths:: When paths are given, show them (note that this isn't really raw pathnames, but rather a list of patterns to match). Otherwise diff --git a/builtin-ls-tree.c b/builtin-ls-tree.c index cb6171768..5b63e6ead 100644 --- a/builtin-ls-tree.c +++ b/builtin-ls-tree.c @@ -23,7 +23,7 @@ static int chomp_prefix; static const char *ls_tree_prefix; static const char ls_tree_usage[] = - "git ls-tree [-d] [-r] [-t] [-l] [-z] [--name-only] [--name-status] [--full-name] [--abbrev[=<n>]] <tree-ish> [path...]"; + "git ls-tree [-d] [-r] [-t] [-l] [-z] [--name-only] [--name-status] [--full-name] [--full-tree] [--abbrev[=<n>]] <tree-ish> [path...]"; static int show_recursive(const char *base, int baselen, const char *pathname) { @@ -156,6 +156,11 @@ int cmd_ls_tree(int argc, const char **argv, const char *prefix) chomp_prefix = 0; break; } + if (!strcmp(argv[1]+2, "full-tree")) { + ls_tree_prefix = prefix = NULL; + chomp_prefix = 0; + break; + } if (!prefixcmp(argv[1]+2, "abbrev=")) { abbrev = strtoul(argv[1]+9, NULL, 10); if (abbrev && abbrev < MINIMUM_ABBREV) |