libgit2

git_status_opt_t

Version:

Flags to control status callbacks

  • GIT_STATUS_OPT_INCLUDE_UNTRACKED says that callbacks should be made on untracked files. These will only be made if the workdir files are included in the status "show" option.
  • GIT_STATUS_OPT_INCLUDE_IGNORED says that ignored files get callbacks. Again, these callbacks will only be made if the workdir files are included in the status "show" option.
  • GIT_STATUS_OPT_INCLUDE_UNMODIFIED indicates that callback should be made even on unmodified files.
  • GIT_STATUS_OPT_EXCLUDE_SUBMODULES indicates that submodules should be skipped. This only applies if there are no pending typechanges to the submodule (either from or to another type).
  • GIT_STATUS_OPT_RECURSE_UNTRACKED_DIRS indicates that all files in untracked directories should be included. Normally if an entire directory is new, then just the top-level directory is included (with a trailing slash on the entry name). This flag says to include all of the individual files in the directory instead.
  • GIT_STATUS_OPT_DISABLE_PATHSPEC_MATCH indicates that the given path should be treated as a literal path, and not as a pathspec pattern.
  • GIT_STATUS_OPT_RECURSE_IGNORED_DIRS indicates that the contents of ignored directories should be included in the status. This is like doing git ls-files -o -i --exclude-standard with core git.
  • GIT_STATUS_OPT_RENAMES_HEAD_TO_INDEX indicates that rename detection should be processed between the head and the index and enables the GIT_STATUS_INDEX_RENAMED as a possible status flag.
  • GIT_STATUS_OPT_RENAMES_INDEX_TO_WORKDIR indicates that rename detection should be run between the index and the working directory and enabled GIT_STATUS_WT_RENAMED as a possible status flag.
  • GIT_STATUS_OPT_SORT_CASE_SENSITIVELY overrides the native case sensitivity for the file system and forces the output to be in case-sensitive order
  • GIT_STATUS_OPT_SORT_CASE_INSENSITIVELY overrides the native case sensitivity for the file system and forces the output to be in case-insensitive order
  • GIT_STATUS_OPT_RENAMES_FROM_REWRITES indicates that rename detection should include rewritten files
  • GIT_STATUS_OPT_NO_REFRESH bypasses the default status behavior of doing a "soft" index reload (i.e. reloading the index data if the file on disk has been modified outside libgit2).

Calling git_status_foreach() is like calling the extended version with: GIT_STATUS_OPT_INCLUDE_IGNORED, GIT_STATUS_OPT_INCLUDE_UNTRACKED, and GIT_STATUS_OPT_RECURSE_UNTRACKED_DIRS. Those options are bundled together as GIT_STATUS_OPT_DEFAULTS if you want them as a baseline.

Values

GIT_STATUS_OPT_INCLUDE_UNTRACKED
0
GIT_STATUS_OPT_INCLUDE_IGNORED
1
GIT_STATUS_OPT_INCLUDE_UNMODIFIED
2
GIT_STATUS_OPT_EXCLUDE_SUBMODULES
3
GIT_STATUS_OPT_RECURSE_UNTRACKED_DIRS
4
GIT_STATUS_OPT_DISABLE_PATHSPEC_MATCH
5
GIT_STATUS_OPT_RECURSE_IGNORED_DIRS
6
GIT_STATUS_OPT_RENAMES_HEAD_TO_INDEX
7
GIT_STATUS_OPT_RENAMES_INDEX_TO_WORKDIR
8
GIT_STATUS_OPT_SORT_CASE_SENSITIVELY
9
GIT_STATUS_OPT_SORT_CASE_INSENSITIVELY
10
GIT_STATUS_OPT_RENAMES_FROM_REWRITES
11
GIT_STATUS_OPT_NO_REFRESH
12

Versions