Skip to content
/ ignore Public

Create `.gitignore` from GitHub/TopTal (gitignore.io) templates + your own patterns, all configured in `Ignorefile`

License

Notifications You must be signed in to change notification settings

acevif/ignore

Repository files navigation

ignore

Create .gitignore from GitHub/TopTal (gitignore.io) templates + your own patterns, all configured in Ignorefile

Quick start

  1. Create an Ignorefile in the project root with:
gitignore.io:
  - Node
  - macOS

github:
  - VisualStudio

paths-ignore:
  - "/.turbo"
  - "/.nx"
  1. Generate .gitignore.

If you use Homebrew:

brew install acevif/tap/ignore
ignore

If you use Nix, just run without installing:

nix run github:acevif/ignore

Ignorefile format

Ignorefile is a YAML configuration file placed alongside .gitignore.

It supports the following keys:

Note: Quote patterns containing special characters (e.g., !, ., /).

Example Ignorefile:

# Templates sourced from Toptal's gitignore.io
gitignore.io:
  - Rust
  - direnv

# Templates sourced from GitHub's repository
github:
  - Python
  - Node

# Project-specific rules
paths-ignore:
  - "/.turbo"
  - "/.nx"
  - ".env"
  # Ignore /src/auto-generated but track .env.example inside it
  - "/src/auto-generated"
  - "!/src/auto-generated/.env.example"

Commands

Generate or update .gitignore from Ignorefile in the current directory:

ignore
# or explicitly
ignore update

Show help:

ignore help
ignore --help
ignore -h

Show version:

ignore version
ignore --version

Install

Homebrew

brew install acevif/tap/ignore

Nix

Install to your profile:

nix profile install github:acevif/ignore

Use in your devShell (flake input):

inputs = {
  nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11";
  ignore.url = "github:acevif/ignore";
};
outputs = { self, nixpkgs, ignore, ... }:
  let
    system = builtins.currentSystem;
    pkgs = import nixpkgs { inherit system; };
  in {
    devShells.default = pkgs.mkShell {
      packages = [ ignore.packages.${system}.default ];
    };
  };

Cargo

git clone https://github.com/acevif/ignore.git
cd ignore
cargo install --path rust

Contributing

See CONTRIBUTING.md for development setup, guidelines, and how to contribute.

Document status

  • Last updated: 2026-01-25
  • Last reviewed: 2026-01-22
Date definitions
  • Updated means: content changes that affect meaning (format-only changes do not count).
  • Review means: a quick sanity check for consistency (not an exhaustive review).

About

Create `.gitignore` from GitHub/TopTal (gitignore.io) templates + your own patterns, all configured in `Ignorefile`

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Sponsor this project

Packages

 
 
 

Contributors