| name | diff-ignore |
| description | Configure ignore patterns for file-tree-diff using .ftdignore files or CLI flags. Use when setting up ignore rules for directory comparisons, excluding build artifacts, or creating project-specific ignore configurations. Triggers include "ignore node_modules in diff", ".ftdignore", "exclude files from diff", "diff ignore patterns". |
diff-ignore
Configure which files and directories to exclude from file-tree-diff comparisons.
Methods
1. CLI flags (one-time)
ftd --ignore "*.log" left/ right/
ftd --ignore "tmp/" --ignore "coverage/" left/ right/
ftd --ignore-common left/ right/
2. .ftdignore file (project-specific)
Create .ftdignore in either (or both) compared directories:
# gitignore syntax
node_modules/
dist/
*.min.js
*.log
.cache/
# Negation: always include this
!dist/MANIFEST.json
Auto-loaded when present. Both directories' .ftdignore files are merged.
3. Global ignore file (always applied)
~/.config/file-tree-diff/ignore
Same syntax as .ftdignore. Applied to all comparisons.
Built-in Common List (--ignore-common)
node_modules/
.git/
dist/
build/
.DS_Store
*.pyc
*.o
__pycache__/
.pnpm-store/
.cache/
coverage/
.nyc_output/
*.min.js
*.min.css
Pattern Syntax
| Pattern | Matches |
|---|
*.log | All .log files in any directory |
tmp/ | Directory named tmp anywhere |
src/*.test.ts | Test files directly in src/ |
**/generated/** | Any path containing "generated" |
!important.log | Negation: include this file even if *.log matches |
Viewing Active Patterns
ftd --show-ignored left/ right/
Shows which patterns are active and how many files were excluded.