Safely ignore files not needed in your repository
.dvignore
file is used by Diversion to specify files and directories that should be ignored when tracking changes. This helps keep the repository clean by excluding unnecessary or automatically generated files, such as build artifacts, temporary files, and cached data.
.dvignore
file ensures that only relevant files are committed to the repository. This helps:
.dvignore
decides what the repository tracks and stores, Selective Sync controls which of those already‑tracked files your workspace actually downloads.
.dvignore
file consists of patterns defining which files or directories to exclude. It typically follows these rules:
#
serves as a comment. Put a backslash \
in front of the first hash for patterns that begin with a hash.*
matches any sequence of characters (but does not cross /
boundaries, unlike **
)./
ignore all contents inside.(!)
explicitly include files that might otherwise be ignored./
– a leading slash matches from the repository root; without it, the pattern can match anywhere.**
– matches across directory boundaries (e.g., Assets/**/config.ini
).!pattern
only re‑includes a path if one of its ancestors was ignored by a prior rule.Saved/Windows/Content/file.txt
-> still ignored
.dvignore
files – rules in nested directories override rules from parent directories.
Git compatibility: Diversion implements the same pattern‑matching semantics as Git’s .gitignore
—including support for nested ignore files—so a source tree copied from Git will behave identically out of the box.
For game‑engine projects Diversion ships a default .dvignore tailored to each engine. The snippets below are high‑level illustrations; check the actual .dvignore generated in your repo for the authoritative rules.
.dvignore
file based on your project needs. If you work with additional tools or frameworks, consider adding their cache or temporary directories to improve repository management.
For example, if you use a custom build system, you might add:
!Build/app.dll
re-includes a possible future file, the Build/
directory itself is tracked (and will show up empty until app.dll
appears).
If you really want to ignore Build/
altogether, remove the negation line (!Build/app.dll
).