feat(gix): support diff.ignoreSubmodules
overrides in status
#2107
+74
−7
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds support for
diff.ignoreSubmodules
overrides in status. As far as I can tell from experimentation this setting takes priority oversubmodules.<name>.ignore
settings.I decided not to change
submodule::ignore
because git also only applies this setting to status/diff and not submodule-specific command. Thus I opted to include it in theAsConfigured
handling.I have built starship with the changes from this PR with the changes from this PR for testing and it appears to work as expected. I would have liked to add a test, but making changes to the
config_snapshot
for testing appeared to be non-trivial, so I opted to omit that from this PR. I am also not sure if theDiffSubmoduleIgnoreConfig
enum variant I added is the preferred way to handle errors in this case.Related: starship/starship#6840