Skip to content

Commit 722dbc4

Browse files
committed
Merge branch 'bw/status-ignore-submodules-from-config' into pu
* bw/status-ignore-submodules-from-config: wt-status: actually ignore submodules when requested
2 parents 4061494 + c6d8ccf commit 722dbc4

File tree

2 files changed

+20
-1
lines changed

2 files changed

+20
-1
lines changed

t/t3426-rebase-submodule.sh

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,4 +40,21 @@ git_rebase_interactive () {
4040

4141
test_submodule_switch "git_rebase_interactive"
4242

43+
test_expect_success 'rebase interactive ignores modified submodules' '
44+
test_when_finished "rm -rf super sub" &&
45+
git init sub &&
46+
git -C sub commit --allow-empty -m "Initial commit" &&
47+
git init super &&
48+
git -C super submodule add ../sub &&
49+
git -C super config submodule.sub.ignore dirty &&
50+
>super/foo &&
51+
git -C super add foo &&
52+
git -C super commit -m "Initial commit" &&
53+
test_commit -C super a &&
54+
test_commit -C super b &&
55+
test_commit -C super/sub c &&
56+
set_fake_editor &&
57+
git -C super rebase -i HEAD^^
58+
'
59+
4360
test_done

wt-status.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2293,8 +2293,10 @@ int has_unstaged_changes(int ignore_submodules)
22932293
int result;
22942294

22952295
init_revisions(&rev_info, NULL);
2296-
if (ignore_submodules)
2296+
if (ignore_submodules) {
22972297
rev_info.diffopt.flags.ignore_submodules = 1;
2298+
rev_info.diffopt.flags.override_submodule_config = 1;
2299+
}
22982300
rev_info.diffopt.flags.quick = 1;
22992301
diff_setup_done(&rev_info.diffopt);
23002302
result = run_diff_files(&rev_info, 0);

0 commit comments

Comments
 (0)