Source code

Revision control

Copy as Markdown

Other Tools

# Ignorefile Lint
Ignorefile lint is a linter for `.gitignore` and `.hgignore` files,
to verify those files have equivalent entries.
Each pattern is roughly compared, ignoring punctuation, to absorb the
syntax difference.
## Run Locally
The mozlint integration of ignorefile linter can be run using mach:
```{eval-rst}
.. parsed-literal::
$ mach lint --linter ignorefile
```
## Special syntax
The following special comment can be used to ignore the pattern in the next line.
```{eval-rst}
.. parsed-literal::
# lint-ignore-next-line: git-only
```
The next line exists only in `.gitignore`.
```{eval-rst}
.. parsed-literal::
# lint-ignore-next-line: syntax-difference
```
The next line's pattern needs to be represented differently between
`.gitignore` and `.hgignore`.
This can be used when the `.hgignore` uses complex pattern which cannot be
represented in single pattern in `.gitignore`.
## Sources
- {searchfox}`Configuration (YAML) <tools/lint/ignorefile.yml>`
- {searchfox}`Source <tools/lint/ignorefile/__init__.py>`