Exclusion Patterns

Focus on What Matters

Controlling What Gets Backed Up

Zippy's powerful exclusion system gives you precise control over what files and folders are included in your backups.

What Are Exclusion Patterns?

Exclusion patterns tell Zippy which files and folders to ignore during the backup and restore process. Any files or folders that match these patterns will be completely skipped—they won't be backed up, restored, or modified in any way.

This gives you precise control over your backups, allowing you to:

Exclude temporary files that don't need backing up
Skip large files that would slow down backups
Avoid backing up system or cache files
Keep your backups focused on important content

Important: Patterns Are Immutable

Once added, exclusion patterns cannot be removed. This design ensures data integrity by maintaining consistent exclusion rules across your entire backup history, preventing potential data loss during restore operations.

Because of this immutability, it's important to:

  • Plan your exclusion strategy carefully before starting a project
  • Be cautious with global patterns that might unintentionally exclude important files

Pattern Types

All Exclusion Pattern Types

Zippy offers six distinct pattern types to give you precise control over your backups.

1
Global Extension
[*.ext]

Excludes all files with the specified extension, regardless of their location in your project folder.

Examples:
[*.tmp]
[*.log]
[*.bak]
[*.ini]
When to use: Perfect for excluding temporary files, logs, caches, and backup files that applications might create automatically throughout your project.
2
Path-Specific File
path/file.ext

Excludes a specific file at the exact path indicated. Does not exclude files with the same name in other locations.

Examples:
readme.txt
docs/manual.pdf
settings.ini
src/test.json
When to use: Ideal for excluding specific configuration files, private documents, or any single files you don't want to back up at specific locations.
3
Global File
[filename.ext]

Excludes any file with the specified name, regardless of its location in your project.

Examples:
[readme.txt]
[notes.txt]
[charts.xlsx]
[document.docx]
When to use: Perfect for system files or standard documentation files that appear in multiple locations and that you don't need to back up.
4
Path-Specific Folder
folder/

Excludes a specific folder and all its contents at the exact path indicated. Does not exclude folders with the same name in other locations.

Note: The trailing slash (/) is required to indicate this is a folder.

Examples:
temp/
logs/
src/temp/
docs/drafts/
When to use: Useful for excluding specific folders like logs, temporary files, or build artifacts at particular locations while keeping similarly named folders elsewhere.
5
Global Folder
[foldername]

Excludes any folder with the specified name, regardless of its location in your project, and all of its contents.

Examples:
[temp]
[logs]
[node_modules]
[cache]
When to use: Ideal for excluding common folder types that appear throughout your project structure, like temporary folders, logs, or any standard folder that you never want to back up.
6
Filename Prefix
[prefix*]

Excludes all files starting with the specified prefix at any level in the project.

Examples:
[temp*]
[WIP_*]
[official*]
[draft_*]
When to use: Perfect for excluding groups of related files that follow a naming convention such as temporary files, works in progress, or any files that share a common prefix.

Common Use Cases

Pattern Examples in Action

See how different pattern types can be applied to real-world scenarios for effective file exclusion.

1

Global Extensions

[*.tmp]
[*.log]

Use this pattern to exclude all files with specific extensions, such as temporary files or logs, across your entire project.

How It Works: This pattern will exclude any file with the specified extension, regardless of its location in the project structure.

Folder Structure Example:
📁 project-zippy/ ├── 📄 document.txt ├── 📄 document.tmp ├── 📄 system.log ├── 📁 docs/ │ ├── 📄 guide.pdf │ └── 📄 archive.tmp └── 📁 src/ ├── 📄 main.py └── 📄 build.log

Pro Tip: Common extensions to exclude include .tmp, .log, .cache, .bak, and other temporary or generated file types.

2

Path-Specific Files

readme.txt
docs/manual.pdf
config/settings.ini

Use this pattern to target individual files at specific locations in your project hierarchy.

How It Works: This pattern matches only files at the exact path specified, allowing for precise targeting of individual files.

Folder Structure Example:
📁 project-zippy/ ├── 📄 readme.txt ├── 📄 document.txt ├── 📁 docs/ │ ├── 📄 manual.pdf │ ├── 📄 readme.txt │ └── 📄 guide.pdf └── 📁 config/ ├── 📄 settings.ini └── 📄 defaults.ini

Pro Tip: This pattern is perfect for excluding configuration files or specific documents that should not be tracked.

3

Global Files

[readme.txt]
[notes.txt]

Use this pattern to exclude files with specific names regardless of where they appear in your project.

How It Works: This pattern will match any file with the exact name specified, in any folder throughout your project.

Folder Structure Example:
📁 project-zippy/ ├── 📄 readme.txt ├── 📄 document.txt ├── 📄 notes.txt ├── 📁 docs/ │ ├── 📄 readme.txt │ ├── 📄 manual.pdf │ └── 📄 notes.txt └── 📁 src/ ├── 📄 main.py ├── 📄 readme.txt └── 📄 test.json

Pro Tip: This pattern is useful for excluding commonly named files like readme.txt or notes.txt that might be scattered throughout your project.

4

Path-Specific Folders

temp/
logs/
src/temp/

Use this pattern to exclude specific folders and all their contents based on their exact path in the project.

How It Works: This pattern matches folders at the specific path only, excluding them and all their contents.

Folder Structure Example:
📁 project-zippy/ ├── 📄 document.txt ├── 📁 temp/ │ ├── 📄 temp1.txt │ └── 📄 temp2.txt ├── 📁 logs/ │ ├── 📄 error.log │ └── 📄 access.log ├── 📁 src/ │ ├── 📄 main.py │ ├── 📁 temp/ │ │ └── 📄 debug.txt │ └── 📁 data/ └── 📁 images/ └── 📁 backup/

Pro Tip: Use this pattern when you need to exclude specific folders but not others with the same name in different locations.

5

Global Folders

[temp]
[logs]

Use this pattern to exclude all folders with a specific name, regardless of where they appear in your project.

How It Works: This pattern matches any folder with the specified name, no matter where it's located in your project structure.

Folder Structure Example:
📁 project-zippy/ ├── 📄 document.txt ├── 📁 temp/ │ ├── 📄 temp1.txt │ └── 📄 temp2.txt ├── 📁 logs/ │ ├── 📄 error.log │ └── 📄 access.log ├── 📁 src/ │ ├── 📄 main.py │ ├── 📁 temp/ │ │ └── 📄 debug.txt │ └── 📁 logs/ │ └── 📄 build.log └── 📁 assets/ └── 📄 image.jpg

Pro Tip: Common folders to exclude globally include temp, logs, cache, node_modules, and other folders containing generated content.

6

Filename Prefixes

[temp*]
[WIP_*]

Use this pattern to exclude all files that begin with a specific prefix, regardless of their full name or location.

How It Works: This pattern will exclude any file that starts with the specified prefix, in any folder throughout your project.

Folder Structure Example:
📁 project-zippy/ ├── 📄 document.txt ├── 📄 tempfile.txt ├── 📄 notes.txt ├── 📁 docs/ │ ├── 📄 guide.pdf │ ├── 📄 temporary.pdf │ └── 📄 WIP_manual.pdf └── 📁 src/ ├── 📄 main.py ├── 📄 temp_config.json └── 📄 WIP_module.py

Pro Tip: This is useful for excluding files with prefixes like 'temp', 'draft_', 'WIP_', or any other prefix that indicates files that should not be tracked.

Good to Know

Pattern Configuration

Understand the nuances of pattern matching and learn about default exclusion patterns to optimize your configuration.

Case Sensitivity in Patterns

All exclusion patterns are case-insensitive by default. This means that patterns will match files and folders regardless of uppercase or lowercase characters in their names. This behavior simplifies pattern creation and ensures that files aren't accidentally included due to case differences.

[readme.txt]
Will Match:
readme.txt
README.TXT
Readme.Txt
ReadMe.txt
Default Exclusion Patterns

Zippy includes the following patterns by default:

Default Patterns:
[desktop.ini]
[Thumbs.db]
[~$*]
  • Excludes all 'desktop.ini' files (Windows folder configuration)
  • Excludes all 'Thumbs.db' files (Windows thumbnail cache)
  • Excludes Microsoft Office temporary files (e.g., '~$document.docx')