File tree Expand file tree Collapse file tree 2 files changed +20
-1
lines changed Expand file tree Collapse file tree 2 files changed +20
-1
lines changed Original file line number Diff line number Diff line change @@ -40,4 +40,21 @@ git_rebase_interactive () {
40
40
41
41
test_submodule_switch " git_rebase_interactive"
42
42
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
+
43
60
test_done
Original file line number Diff line number Diff line change @@ -2293,8 +2293,10 @@ int has_unstaged_changes(int ignore_submodules)
2293
2293
int result ;
2294
2294
2295
2295
init_revisions (& rev_info , NULL );
2296
- if (ignore_submodules )
2296
+ if (ignore_submodules ) {
2297
2297
rev_info .diffopt .flags .ignore_submodules = 1 ;
2298
+ rev_info .diffopt .flags .override_submodule_config = 1 ;
2299
+ }
2298
2300
rev_info .diffopt .flags .quick = 1 ;
2299
2301
diff_setup_done (& rev_info .diffopt );
2300
2302
result = run_diff_files (& rev_info , 0 );
You can’t perform that action at this time.
0 commit comments