A collection of useful .gitignore templates
Go to file
2017-07-30 15:57:56 -04:00
.github adding a template to help streamline review process 2016-02-27 12:48:40 +11:00
Global JetBrains: out/ ignored recursively 2017-07-26 09:57:33 +02:00
Actionscript.gitignore Add FlashDevelop and executables to Actionscript 2016-04-15 11:36:15 +01:00
Ada.gitignore ensure single trailing newline 2014-03-27 17:04:56 +01:00
Agda.gitignore Create Agda.gitignore 2013-08-15 03:18:55 +02:00
Android.gitignore Ignore dictionaries to reflect docs 2017-02-17 11:25:02 +01:00
AppceleratorTitanium.gitignore Added Appcelerator Titanium .gitignore file. 2012-08-22 18:06:15 -07:00
AppEngine.gitignore Added template for Google App Engine 2015-01-15 19:05:19 -05:00
ArchLinuxPackages.gitignore Add .jar, .exe and .msi 2015-05-28 12:37:43 +02:00
Autotools.gitignore autotools.gitignore: add missing files 2016-10-11 09:39:26 +02:00
C.gitignore Update C.gitignore 2016-10-31 18:27:09 -04:00
C++.gitignore added prerequisites for C and C++ 2016-06-29 13:33:32 -03:00
CakePHP.gitignore Update CakePHP.gitignore 2015-11-20 18:14:33 +01:00
CFWheels.gitignore add cfwheels gitignore 2011-02-21 18:02:55 -08:00
ChefCookbook.gitignore Remove lockfiles from Chef template 2014-03-07 00:24:00 +11:00
Clojure.gitignore Add .gitignore for Leiningen projects 2011-04-08 21:02:05 +03:00
CMake.gitignore cmake: add Testing/ log directory 2017-01-10 18:30:58 -06:00
CodeIgniter.gitignore Merge branch 'master' into codeigniter3update 2017-02-02 09:36:10 -02:00
CommonLisp.gitignore Update CommonLisp.gitignore 2016-12-27 12:12:30 -05:00
Composer.gitignore Incorrect Dir Path 2015-11-30 11:03:09 +07:00
Concrete5.gitignore Added .htaccess to concrete5 gitignore 2015-09-20 12:18:58 +04:00
CONTRIBUTING.md Add an explanation to reduce PHP framework clutter 2015-03-01 12:53:03 +11:00
Coq.gitignore Add mllib, mlpack files 2016-10-11 17:25:39 -04:00
CraftCMS.gitignore Removing .DS_Store rule as it is included in global rules 2014-06-24 10:01:43 -04:00
CUDA.gitignore Add CUDA.gitignore 2015-03-14 17:29:54 -07:00
D.gitignore Update D.gitignore 2016-06-06 22:23:51 +03:00
Dart.gitignore Update Dart.gitignore 2017-03-11 13:41:43 -08:00
Delphi.gitignore Add "__recovery" folder. 2016-02-17 02:19:09 +09:00
DM.gitignore ensure single trailing newline 2014-03-27 17:04:56 +01:00
Drupal.gitignore Incorrect file path 2015-08-26 13:44:50 -04:00
Eagle.gitignore update Eagle.gitignore for .lck 2016-02-03 21:51:15 +08:00
Elisp.gitignore add final newline 2016-10-27 03:19:31 +11:00
Elixir.gitignore Update Elixir.gitignore 2016-10-12 11:36:46 +11:00
Elm.gitignore Ignore elm-stuff project-wide 2016-07-28 10:18:33 +02:00
EPiServer.gitignore ensure single trailing newline 2014-03-27 17:04:56 +01:00
Erlang.gitignore Update Erlang.gitignore 2016-09-13 23:37:43 +09:00
ExpressionEngine.gitignore Merge pull request #488 from nanadevelopment/eeConfigAdd 2013-11-11 05:37:55 -08:00
ExtJs.gitignore Update ExtJs.gitignore 2016-10-23 16:58:30 +02:00
Fancy.gitignore ensure single trailing newline 2014-03-27 17:04:56 +01:00
Finale.gitignore ensure single trailing newline 2013-10-06 14:40:01 +02:00
ForceDotCom.gitignore ensure single trailing newline 2013-10-06 14:40:01 +02:00
Fortran.gitignore Link a new fortran template to existing c++ one 2014-07-16 23:09:37 +10:00
FuelPHP.gitignore update FuelPHP.gitignore 2014-12-08 21:05:58 +09:00
Gcov.gitignore Capitalise initial letter in template filenames for consistency/sorting 2015-01-07 15:16:27 +11:00
GitBook.gitignore Correct URL for NPM URL reference 2015-02-05 10:21:40 -06:00
Go.gitignore Add plugins for Mac. 2017-01-30 17:48:28 +03:00
Gradle.gitignore Only ignore the build directory in the same directory as .gitignore for Gradle 2016-06-24 12:30:38 -05:00
Grails.gitignore Adding additional comments 2014-09-08 00:52:39 -04:00
GWT.gitignore Adding ".gwt/", "gwt-unitCache/", "www-test" and ".gwt-tmp/" to .gitignore 2013-11-13 03:00:19 +01:00
Haskell.gitignore Ignore .ghc.environment.* 2017-07-20 08:30:45 -07:00
Idris.gitignore Add an Idris gitignore 2014-02-27 21:51:51 -05:00
IGORPro.gitignore Create IGORPro.gitignore 2014-12-03 11:33:11 +01:00
Java.gitignore Add comment for Java .class files 2017-02-13 17:02:12 -05:00
Jboss.gitignore Deployed file ignore 2013-07-25 06:18:55 -07:00
Jekyll.gitignore Add .jekyll-metadata to default Jekyll .gitignore 2015-04-08 12:07:41 -07:00
Joomla.gitignore Update Joomla gitignore 2016-12-24 10:15:38 +00:00
Julia.gitignore Julia: ignore deps/deps.jl 2016-05-16 12:14:15 -04:00
KiCad.gitignore Fixed/Added ignore rules 2017-01-12 00:14:28 -08:00
Kohana.gitignore ensure single trailing newline 2013-10-06 14:40:01 +02:00
LabVIEW.gitignore LabVIEW.gitignore 2014-06-24 10:56:38 -05:00
Laravel.gitignore Merge pull request #2192 from Arsfiqball/update-laravel-patch-2 2017-01-29 13:31:39 +01:00
Leiningen.gitignore Correct .jar and .class mentions 2016-07-17 23:33:53 -03:00
LemonStand.gitignore ensure single trailing newline 2013-10-06 14:40:01 +02:00
LICENSE Use the exact CC-0 license text 2016-10-28 11:18:45 -04:00
Lilypond.gitignore Add ignore file for lilypond. 2011-02-21 17:57:27 -08:00
Lithium.gitignore The Lithium app should be the root repo folder 2012-09-01 19:10:36 -03:00
Lua.gitignore Added a .gitignore template for Lua based projects. 2015-01-03 17:12:56 +00:00
Magento.gitignore Fixes issue excluding sub directories 2017-03-09 11:31:19 +01:00
Maven.gitignore Reword comment 2017-02-15 14:00:41 -07:00
Mercury.gitignore Mercury.gitignore: Add Mercury.modules 2015-01-09 13:06:58 +08:00
MetaProgrammingSystem.gitignore Grammar/formatting tweak to comments 2014-06-12 11:42:57 +10:00
Nanoc.gitignore Nanoc: Mention nanoc.yaml rather than config.yaml 2016-10-23 15:05:29 +02:00
Nim.gitignore Create Nim.gitignore 2014-12-30 17:23:11 -05:00
Node.gitignore fix(Node): ignore yarn logs 2017-02-09 00:13:21 -06:00
Objective-C.gitignore updated link to fastlane docs 2017-02-16 10:47:31 +11:00
OCaml.gitignore Add ocamlbuild and oasis generated files to OCaml .gitignore 2014-09-24 18:08:03 +07:00
Opa.gitignore Added Opa.gitignore 2012-03-03 02:08:17 +01:00
OpenCart.gitignore excluding vqmod cache files and logs 2016-10-15 11:44:22 +00:00
OracleForms.gitignore added gitignore for Oracle Forms development 2012-03-19 16:46:57 -04:00
Packer.gitignore Add a support for packer 2014-03-09 14:35:00 +09:00
Perl.gitignore Merge pull request #2036 from sammysfo/patch-1 2017-01-28 11:07:44 +01:00
Phalcon.gitignore Remove trailing asterisks in Phalcon rules 2014-03-21 12:57:41 +11:00
PlayFramework.gitignore Added /project/project to PlayFramework.gitignore 2017-02-22 08:43:06 -08:00
Plone.gitignore Covered by global vim template 2013-11-12 15:09:20 +07:00
Prestashop.gitignore Update Prestashop.gitignore 2017-05-15 17:48:05 +08:00
Processing.gitignore Added the processing project 2013-09-26 16:19:15 -04:00
PureScript.gitignore Added .gitignore for PureScript 2015-08-02 19:26:46 +01:00
Python.gitignore Consolidate all environments in one section 2017-05-22 09:24:44 +00:00
Qooxdoo.gitignore Add gitignore for qooxdoo apps 2011-02-21 18:08:18 -08:00
Qt.gitignore add object_script to Qt.gitignore 2017-05-21 11:06:01 +04:00
R.gitignore Add knitr and R markdown patterns to R.gitignore 2016-04-29 07:17:44 -07:00
Rails.gitignore Double-asterisk misuse 2017-03-23 11:09:50 -05:00
README.md Merge pull request #1424 from github/reduce-noise 2017-02-02 10:56:07 +01:00
RhodesRhomobile.gitignore Add Rhodes mobile application framework gitignore 2010-11-10 03:44:16 +08:00
ROS.gitignore Remove unnecessary rules 2014-04-23 20:46:03 +09:00
Ruby.gitignore Add a brief explanation. 2016-04-15 22:19:36 -07:00
Rust.gitignore Add rustfmt gitignore (#2108) 2016-10-03 14:46:39 +11:00
Sass.gitignore Add slash to .sass-cache 2015-05-15 20:35:12 +02:00
Scala.gitignore [Scala] remove external tools excludes. 2017-02-17 01:01:42 +05:00
Scheme.gitignore Add Scheme.gitignore 2015-08-22 20:56:50 +09:00
SCons.gitignore Added SCons.gitignore 2013-12-17 15:06:57 +08:00
Scrivener.gitignore Added .gitignore for Scrivener 2013-11-11 14:34:42 +00:00
Sdcc.gitignore ensure single trailing newline 2013-10-06 14:40:01 +02:00
SeamGen.gitignore Update SeamGen.gitignore 2012-07-31 11:57:21 +08:00
SketchUp.gitignore Add gitignore for sketchup backup files. 2012-01-18 17:33:11 -06:00
Smalltalk.gitignore Add Smalltalk gitignore 2015-08-22 10:00:29 +09:00
Stella.gitignore Capitalise initial letter in template filenames for consistency/sorting 2015-01-07 15:16:27 +11:00
SugarCRM.gitignore ensure the following ! rules are included 2017-05-15 19:31:13 +10:00
Swift.gitignore updated link to fastlane docs 2017-02-16 10:47:31 +11:00
Symfony.gitignore Remove Composer's file and directory. 2017-03-06 19:16:06 +03:30
SymphonyCMS.gitignore added symphony and workspace/uploads dir 2012-04-11 11:39:01 +03:00
Terraform.gitignore Ignore terraform module directory 2016-07-14 14:34:04 +08:00
TeX.gitignore Add pdfpc files to Tex.gitignore 2017-03-31 19:36:59 +02:00
Textpattern.gitignore Added Textpattern gitignore 2012-01-17 11:04:16 +00:00
TurboGears2.gitignore Add for TurboGears2 (based off of Python template) 2010-11-09 15:46:02 +08:00
Typo3.gitignore Fix few typos 2015-12-13 16:07:46 +02:00
Umbraco.gitignore Clean up expired entries, fix whitespace. 2015-11-06 15:04:28 +11:00
Unity.gitignore remove extra line 2017-03-10 14:43:32 -08:00
UnrealEngine.gitignore Allow PakBlacklist-*.txt files inside Build dir 2017-03-09 10:56:06 -03:00
VisualStudio.gitignore Update VisualStudio.gitignore 2017-07-30 15:57:56 -04:00
VVVV.gitignore ensure single trailing newline 2014-03-27 17:04:56 +01:00
Waf.gitignore Waf: Be more explicit in patterns 2016-03-24 13:26:58 -04:00
WordPress.gitignore WordPress: Only ignore files in root to support other plugins 2015-09-11 06:54:59 +02:00
Xojo.gitignore Ignores *.xojo_uistate 2014-09-14 11:54:56 -04:00
Yeoman.gitignore Create Yeoman.gitignore 2013-10-21 16:20:37 +11:00
Yii.gitignore Merge remote-tracking branch 'origin/master' into pr/506 2013-11-11 09:51:38 -08:00
ZendFramework.gitignore added doctrine 2 orm default cache and proxy locations 2015-10-19 13:10:11 -02:00
Zephir.gitignore Added comments for Zephir 2014-06-21 20:02:16 +04:00

A collection of .gitignore templates

This is GitHubs collection of .gitignore file templates. We use this list to populate the .gitignore template choosers available in the GitHub.com interface when creating new repositories and files.

For more information about how .gitignore files work, and how to use them, the following resources are a great place to start:

Folder structure

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.

Contributing guidelines

Wed love you to help us improve this project. To help us keep this collection high quality, we request that contributions adhere to the following guidelines.

  • Provide a link to the application or projects homepage. Unless its extremely popular, theres a chance the maintainers dont know about or use the language, framework, editor, app, or project your change applies to.

  • Provide links to documentation supporting the change youre making. Current, canonical documentation mentioning the files being ignored is best. If documentation isnt available to support your change, do the best you can to explain what the files being ignored are for.

  • Explain why youre making a change. Even if it seems self-evident, please take a sentence or two to tell us why your change or addition should happen. Its especially helpful to articulate why this change applies to everyone who works with the applicable technology, rather than just you or your team.

  • Please consider the scope of your change. If your change specific to a certain language or framework, then make sure the change is made to the template for that language or framework, rather than to the template for an editor, tool, or operating system.

  • Please only modify one template per pull request. This helps keep pull requests and feedback focused on a specific project or technology.

In general, the more you can do to help us understand the change youre making, the more likely well be to accept your contribution quickly.

If a template is mostly a list of files installed by a particular version of some software (e.g. a PHP framework) then it's brittle and probably no more helpful than a simple ls. If it's not possible to curate a small set of useful rules, then the template might not be a good fit for this collection.

Please also understand that we cant list every tool that ever existed. Our aim is to curate a collection of the most common and helpful templates, not to make sure we cover every project possible. If we choose not to include your language, tool, or project, its not because its not awesome.

Contributing workflow

Heres how we suggest you go about proposing a change to this project:

  1. Fork this project to your account.
  2. Create a branch for the change you intend to make.
  3. Make your changes to your fork.
  4. Send a pull request from your forks branch to our master branch.

Using the web-based interface to make changes is fine too, and will help you by automatically forking the project and prompting to send a pull request too.

License

CC0-1.0.