diff options
author | Sangeeta Jain <sangunb09@gmail.com> | 2020-11-10 11:39:00 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2020-12-09 01:27:35 +0300 |
commit | 8ef93124645f89c45c9ec3edd3b268b38154061a (patch) | |
tree | 6b5f8460317e3fa87f4b3ddd68541ff8f1ef656b /wt-status.c | |
parent | 2e673356aefa8ed19be3c878f966ad6189ecb510 (diff) |
diff: do not show submodule with untracked files as "-dirty"
Git diff reports a submodule directory as -dirty even when there are
only untracked files in the submodule directory. This is inconsistent
with what `git describe --dirty` says when run in the submodule
directory in that state.
Make `--ignore-submodules=untracked` the default for `git diff` when
there is no configuration variable or command line option, so that the
command would not give '-dirty' suffix to a submodule whose working
tree has untracked files, to make it consistent with `git
describe --dirty` that is run in the submodule working tree.
And also make `--ignore-submodules=none` the default for `git status`
so that the user doesn't end up deleting a submodule that has
uncommitted (untracked) files.
Signed-off-by: Sangeeta Jain <sangunb09@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'wt-status.c')
-rw-r--r-- | wt-status.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/wt-status.c b/wt-status.c index 7074bbdd53..c361d1d1e1 100644 --- a/wt-status.c +++ b/wt-status.c @@ -606,7 +606,9 @@ static void wt_status_collect_changes_worktree(struct wt_status *s) if (s->ignore_submodule_arg) { rev.diffopt.flags.override_submodule_config = 1; handle_ignore_submodules_arg(&rev.diffopt, s->ignore_submodule_arg); - } + } else if (!rev.diffopt.flags.ignore_submodule_set && + s->show_untracked_files != SHOW_NO_UNTRACKED_FILES) + handle_ignore_submodules_arg(&rev.diffopt, "none"); rev.diffopt.format_callback = wt_status_collect_changed_cb; rev.diffopt.format_callback_data = s; rev.diffopt.detect_rename = s->detect_rename >= 0 ? s->detect_rename : rev.diffopt.detect_rename; |