gitignore - A collection of useful .gitignore templates

  •        263

This is GitHub’s collection of .gitignore file templates. We use this list to populate the .gitignore template choosers available in the interface when creating new repositories and files.The files in the root directory are for .gitignore templates that are project specific, such as language or framework specific templates. Global (operating system or editor specific) templates should go into the Global/ directory.



Related Projects

gibo - A shell script for easily accessing gitignore boilerplates

  •    Shell

gibo (short for .gitignore boilerplates) is a shell script to help you easily access .gitignore boilerplates from For additional usage instructions, run gibo without arguments.

joe - :running: A .gitignore magician in your command line

  •    Go

A .gitignore magician in your command line. Joe generates .gitignore files from the command line for you. After install, make sure to run joe u. This will download all .gitignore files in ~/joe-data/ folder.

goops - A CLI tool that automagically adds or recommends the best .gitignore for your project

  •    Javascript

goops is a command line tool that adds a .gitignore file to your current working directory. It's a little more helpful than that though, goops will analyze the files in your directory and determine the best .gitignore for your project based on a simple heuristic or offer you a list of potential .gitignore files to choose from.

gitignore-boilerplates - A shell script for easily accessing gitignore boilerplates

  •    Shell

A shell script for easily accessing gitignore boilerplates - Create useful .gitignore files for your project

  •    Javascript

To run from your command line you need an active internet connection and an environment function. You need to add a function to your environment that lets you access the API.

idea-gitignore - .ignore support plugin for IntelliJ IDEA

  •    Java

Restart IDE. To generate new ignore file, just click on File > New or use Alt + Insert shortcut and select .ignore file element.

ripgrep - Recursively searches directories for a regex pattern while respecting your gitignore

  •    Rust

ripgrep is a line-oriented search tool that recursively searches the current directory for a regex pattern. By default, ripgrep will respect gitignore rules and automatically skip hidden files/directories and binary files. ripgrep has first class support on Windows, macOS and Linux, with binary downloads available for every release. ripgrep is similar to other popular search tools like The Silver Searcher, ack and grep.

gitattributes - A collection of useful .gitattributes templates


Similarly to the .gitignore Templates, we're trying to build templates for .gitattributes. Common.gitattributes contains general exclusions that may apply to any project. Consider including them if they are applicable to your project.

craft-scripts - Shell scripts to manage database backups, asset backups, file permissions, asset syncing, cache clearing, and database syncing between Craft CMS environments

  •    Shell

There are several scripts included in craft-scripts, each of which perform different functions. They all use a shared to function. This should be created on each environment where you wish to run the craft-scripts, and it should be excluded from your git repo via .gitignore. Craft-Scripts works with both Craft 2.x & Craft 3.x, and has built-in support for both mysql as well as postgres databases.

laravel-scout-tntsearch-driver - Driver for Laravel Scout search package based on https://github

  •    PHP

This package makes it easy to add full text search support to your models with Laravel 5.3/5.4/5.5/5.6. To prevent your search indexes being commited to your project repository, add the following line to your .gitignore file.


  •    Python

To use run: startproject --template --extension py,md,gitignore yourprojectname

chrome-extension-skeleton - Minimal skeleton for Chrome extension

  •    Javascript

In package.json, rename the project, description, version, add dependencies and any other fields necessary. Generate your .pem key and store it in the root as mykey.pem file. On unix / mac, the command to generate the file is openssl genrsa 2048 | openssl pkcs8 -topk8 -nocrypt > mykey.pem. Note: the generated file is in .gitignore file, it won't be (and should NOT be) commited to the repository unless you know what you are doing.

goop - A simple dependency manager for Go (golang), inspired by Bundler.

  •    Go

A dependency manager for Go (golang), inspired by Bundler. It is different from other dependency managers in that it does not force you to mess with your GOPATH. Run goop install. This will install packages inside a subdirectory called .vendor and create Goopfile.lock, recording exact versions used for each package and its dependencies. Subsequent goop install runs will ignore Goopfile and install the versions specified in Goopfile.lock. You should check this file in to your source version control. It's a good idea to add .vendor to your version control system's ignore settings (e.g. .gitignore).

dbignore - .gitignore for Dropbox

  •    Haskell

Recent versions of Dropbox do not work with dbignore. I currently lack the time fix dbignore. Dropbox is a 32-bit executable on OSX and must be built by a 32-bit version of ghc.

mrm - Codemods for your project config files

  •    Javascript

Command line tool to help you keep configuration (package.json, .gitignore, .eslintrc, etc.) of your open source projects in sync. Most of the available tools are template based. Template approach works moderately well for new project generation but doesn’t work well for updating. Mrm’s approach is closer to codemods than templates.

tiny-glob - 🚀 Super tiny and ~350% faster alternative to node-glob

  •    Javascript

Tiny and extremely fast library to match files and folders using glob patterns. "Globs" is the common name for a specific type of pattern used to match files and folders. It's the patterns you type when you do stuff like ls *.js in your shell or put src/* in a .gitignore file. When used to match filenames, it's sometimes called a "wildcard".

The Silver Searcher - A code-searching tool similar to ack, but faster.

  •    C

A code-searching tool similar to ack, but faster. It ignores file patterns from your .gitignore and .hgignore. If there are files in your source repo you don't want to search, just add their patterns to a .ignore file. (*cough* *.min.js *cough*)

git-it-electron - :computer: :mortar_board: Git-it is a (Mac, Win, Linux) Desktop App for Learning Git and GitHub

  •    HTML

Git-it is a desktop (Mac, Windows and Linux) app that teaches you how to use Git and GitHub on the command line. This application contains challenges for learning Git and GitHub—by using real Git and GitHub, not emulators. You'll be learning the awesome (and not so scary) command line and GitHub which means when you finish all of the challenges you'll have real repositories on your GitHub account and green squares on your contribution chart.

git-labelmaker - :flags: Manage your GitHub labels from the command line!

  •    Javascript

Edit GitHub labels from the command line using git-labelmaker! You can easily add or remove GitHub labels, making it easier for your projects to adhere to a sane labelling scheme. Currently you must be using version >= 4.0.0 of node, because we're using some fancy-shmancy ES6 stuff (Promises are too awesome to not use), and also because the dependant package git-label also currently requires >= 4.0.0.