libgit2

git_submodule_ignore_t

Version:

Submodule ignore values

These values represent settings for the submodule.$name.ignore configuration value which says how deeply to look at the working directory when getting submodule status.

You can override this value in memory on a per-submodule basis with git_submodule_set_ignore() and can write the changed value to disk with git_submodule_save(). If you have overwritten the value, you can revert to the on disk value by using GIT_SUBMODULE_IGNORE_RESET.

The values are:

  • GIT_SUBMODULE_IGNORE_UNSPECIFIED: use the submodule's configuration
  • GIT_SUBMODULE_IGNORE_NONE: don't ignore any change - i.e. even an untracked file, will mark the submodule as dirty. Ignored files are still ignored, of course.
  • GIT_SUBMODULE_IGNORE_UNTRACKED: ignore untracked files; only changes to tracked files, or the index or the HEAD commit will matter.
  • GIT_SUBMODULE_IGNORE_DIRTY: ignore changes in the working directory, only considering changes if the HEAD of submodule has moved from the value in the superproject.
  • GIT_SUBMODULE_IGNORE_ALL: never check if the submodule is dirty
  • GIT_SUBMODULE_IGNORE_DEFAULT: not used except as static initializer when we don't want any particular ignore rule to be specified.

Values

GIT_SUBMODULE_IGNORE_UNSPECIFIED
-1

use the submodule's configuration

GIT_SUBMODULE_IGNORE_NONE
1

any change or untracked == dirty

GIT_SUBMODULE_IGNORE_UNTRACKED
2

dirty if tracked files change

GIT_SUBMODULE_IGNORE_DIRTY
3

only dirty if HEAD moved

GIT_SUBMODULE_IGNORE_ALL
4

never dirty

Returned By

Parameter To

Versions