dulwich.ignore module¶
Parsing of gitignore files.
For details for the matching rules, see https://git-scm.com/docs/gitignore
-
class
dulwich.ignore.IgnoreFilter(patterns, ignorecase=False)¶ Bases:
object-
append_pattern(pattern)¶ Add a pattern to the set.
-
find_matching(path)¶ Yield all matching patterns for path.
Parameters: path – Path to match Returns: Iterator over iterators
-
classmethod
from_path(path, ignorecase=False)¶
-
is_ignored(path)¶ Check whether a path is ignored.
For directories, include a trailing slash.
Returns: status is None if file is not mentioned, True if it is included, False if it is explicitly excluded.
-
-
class
dulwich.ignore.IgnoreFilterManager(top_path, global_filters, ignorecase)¶ Bases:
objectIgnore file manager.
-
find_matching(path)¶ Find matching patterns for path.
Stops after the first ignore file with matches.
Parameters: path – Path to check Returns: Iterator over Pattern instances
-
classmethod
from_repo(repo)¶ Create a IgnoreFilterManager from a repository.
Parameters: repo – Repository object Returns: A IgnoreFilterManager object
-
is_ignored(path)¶ Check whether a path is explicitly included or excluded in ignores.
Parameters: path – Path to check Returns: None if the file is not mentioned, True if it is included, False if it is explicitly excluded.
-
-
class
dulwich.ignore.IgnoreFilterStack(filters)¶ Bases:
objectCheck for ignore status in multiple filters.
-
is_ignored(path)¶ Check whether a path is explicitly included or excluded in ignores.
Parameters: path – Path to check Returns: None if the file is not mentioned, True if it is included, False if it is explicitly excluded.
-
-
class
dulwich.ignore.Pattern(pattern, ignorecase=False)¶ Bases:
objectA single ignore pattern.
-
match(path)¶ Try to match a path against this ignore pattern.
Parameters: path – Path to match (relative to ignore location) Returns: boolean
-
-
dulwich.ignore.default_user_ignore_filter_path(config)¶ Return default user ignore filter path.
Parameters: config – A Config object Returns: Path to a global ignore file
-
dulwich.ignore.match_pattern(path, pattern, ignorecase=False)¶ Match a gitignore-style pattern against a path.
Parameters: - path – Path to match
- pattern – Pattern to match
- ignorecase – Whether to do case-sensitive matching
Returns: bool indicating whether the pattern matched
-
dulwich.ignore.read_ignore_patterns(f)¶ Read a git ignore file.
Parameters: f – File-like object to read from Returns: List of patterns
-
dulwich.ignore.translate(pat)¶ Translate a shell PATTERN to a regular expression.
There is no way to quote meta-characters.
Originally copied from fnmatch in Python 2.7, but modified for Dulwich to cope with features in Git ignore patterns.