aboutsummaryrefslogtreecommitdiff
path: root/builtin
diff options
context:
space:
mode:
authorToon Claes <toon@iotcl.com>2026-01-20 22:47:09 +0100
committerJunio C Hamano <gitster@pobox.com>2026-01-20 14:13:04 -0800
commit209574de2d2ab0a264522c8c44c3eebb6d03ec43 (patch)
tree56c0fdbe4e22735e8e13a582bba89f31acfa5abc /builtin
parentb143f0f60816bbb2095eadc15d81b49c131f6a19 (diff)
downloadgit-209574de2d2ab0a264522c8c44c3eebb6d03ec43.tar.xz
last-modified: document option '-z'
The command git-last-modified(1) already recognizes the option '-z', and similar to many other commands this will make the output NUL-terminated instead of using newlines. Although, this option is missing from the documentation, so add it. In addition to that, to have '-z' also appear in the help output of `git last-modified -h`, move the handling of '-z' to parse_options() in builtin/last-modified.c itself. Before, the parsing of option '-z' was done by diff_opt_parse(), which is called by setup_revisions(). That would fill in `struct diff_options::line_termination`, but that field was not used by the diff machinery itself. Thus it makes more sense to have the handling of that option completely in builtin/last-modified.c. Signed-off-by: Toon Claes <toon@iotcl.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin')
-rw-r--r--builtin/last-modified.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/builtin/last-modified.c b/builtin/last-modified.c
index 781495f597..46423b527e 100644
--- a/builtin/last-modified.c
+++ b/builtin/last-modified.c
@@ -55,6 +55,7 @@ struct last_modified {
struct rev_info rev;
bool recursive;
bool show_trees;
+ bool nul_termination;
const char **all_paths;
size_t all_paths_nr;
@@ -165,10 +166,10 @@ static void last_modified_emit(struct last_modified *lm,
putchar('^');
printf("%s\t", oid_to_hex(&commit->object.oid));
- if (lm->rev.diffopt.line_termination)
- write_name_quoted(path, stdout, '\n');
- else
+ if (lm->nul_termination)
printf("%s%c", path, '\0');
+ else
+ write_name_quoted(path, stdout, '\n');
}
static void mark_path(const char *path, const struct object_id *oid,
@@ -510,7 +511,7 @@ int cmd_last_modified(int argc, const char **argv, const char *prefix,
struct last_modified lm = { 0 };
const char * const last_modified_usage[] = {
- N_("git last-modified [--recursive] [--show-trees]\n"
+ N_("git last-modified [--recursive] [--show-trees] [-z]\n"
" [<revision-range>] [[--] <pathspec>...]"),
NULL
};
@@ -520,6 +521,8 @@ int cmd_last_modified(int argc, const char **argv, const char *prefix,
N_("recurse into subtrees")),
OPT_BOOL('t', "show-trees", &lm.show_trees,
N_("show tree entries when recursing into subtrees")),
+ OPT_BOOL('z', NULL, &lm.nul_termination,
+ N_("lines are separated with NUL character")),
OPT_END()
};