Teta reads and indexes your project’s codebase to power its features. The .tetaignore system uses gitignore-style patterns to exclude files from processing. It supports basic glob patterns and directory matching.
- **filename.txt** - Matches any file named filename.txt anywhere in the project- ***.log** - Matches all files with .log extension- **temp?.txt** - Matches temp1.txt, tempA.txt, etc. (? matches single character)
- **/config.json** - Matches config.json only in the root directory- **build/** - Matches any directory named build (trailing slash indicates directory)- **src/*.dart** - Matches all .dart files directly in src directory
- **Negation patterns (!pattern)** are recognized but not implemented- **Double asterisk (**)** patterns are not supported- **Complex negation** logic is not handled- **Character classes ([abc])** are not supported
1. File paths are converted to relative paths from the base directory2. Each pattern is tested against the relative path3. Patterns are converted to regex for matching: - . becomes \. (literal dot) - * becomes .* (any characters) - ? becomes . (single character)4. Directory patterns (ending with /) use prefix matching5. Root patterns (starting with /) match from project root onlyExamples# .tetaignore file*.log # Ignores all .log filesbuild/ # Ignores build directory/config.json # Ignores config.json in root onlytemp?.txt # Ignores temp1.txt, tempA.txt, etc.