|
1 | | -# A Collection of Useful .gitignore Templates |
| 1 | +# A collection of `.gitignore` templates |
2 | 2 |
|
3 | | -That's what we're trying to build. Please contribute |
4 | | -by [forking][fk] and sending a [pull request][pr]. |
| 3 | +This is GitHub’s collection of [`.gitignore`][man] file templates. |
| 4 | +We use this list to populate the `.gitignore` template choosers available |
| 5 | +in the GitHub.com interface when creating new repositories and files. |
5 | 6 |
|
6 | | -Also **please** only modify **one file** per commit. This'll |
7 | | -make merging easier for everyone. |
| 7 | +For more information about how `.gitignore` files work, and how to use them, |
| 8 | +the following resources are a great place to start: |
8 | 9 |
|
9 | | -Global gitignores (OS-specific, editor-specific) should go into the |
10 | | -`Global/` directory. |
| 10 | +- The [Ignoring Files chapter][chapter] of the [Pro Git][progit] book. |
| 11 | +- The [Ignoring Files article][help] on the GitHub Help site. |
| 12 | +- The [gitignore(5)][man] manual page. |
11 | 13 |
|
12 | | -For more information on gitignore: [gitignore(5)][g5] |
| 14 | +[man]: http://git-scm.com/docs/gitignore |
| 15 | +[help]: https://help.github.com/articles/ignoring-files |
| 16 | +[chapter]: http://git-scm.com/book/en/Git-Basics-Recording-Changes-to-the-Repository#Ignoring-Files |
| 17 | +[progit]: http://git-scm.com/book |
13 | 18 |
|
14 | | -[fk]: http://help.github.com/forking/ |
15 | | -[pr]: http://help.github.com/pull-requests/ |
16 | | -[g5]: http://man.cx/gitignore |
| 19 | +## Folder structure |
| 20 | + |
| 21 | +The files in the root directory are for `.gitignore` templates that are |
| 22 | +project specific, such as language or framework specific templates. |
| 23 | +Global (operating system or editor specific) templates should go into the |
| 24 | +[`Global/`](./Global) directory. |
| 25 | + |
| 26 | +## Contributing guidelines |
| 27 | + |
| 28 | +We’d love you to help us improve this project. To help us keep this collection |
| 29 | +high quality, we request that contributions adhere to the following guidelines. |
17 | 30 |
|
18 | | -## Pull Requests |
| 31 | +- **Provide a link to the application or project’s homepage**. Unless it’s |
| 32 | + extremely popular, there’s a chance the maintainers don’t know about or use |
| 33 | + the language, framework, editor, app, or project your change applies to. |
| 34 | + |
| 35 | +- **Provide links to documentation** supporting the change you’re making. |
| 36 | + Current, canonical documentation mentioning the files being ignored is best. |
| 37 | + If documentation isn’t available to support your change, do the best you can |
| 38 | + to explain what the files being ignored are for. |
| 39 | + |
| 40 | +- **Explain why you’re making a change**. Even if it seems self-evident, please |
| 41 | + take a sentence or two to tell us why your change or addition should happen. |
| 42 | + It’s especially helpful to articulate why this change applies to *everyone* |
| 43 | + who works with the applicable technology, rather than just you or your team. |
| 44 | + |
| 45 | +- **Please consider the scope of your change**. If your change specific to a |
| 46 | + certain language or framework, then make sure the change is made to the |
| 47 | + template for that language or framework, rather than to the template for an |
| 48 | + editor, tool, or operating system. |
19 | 49 |
|
20 | | -Since this repo includes a large and diverse |
21 | | -number of programming languages, frameworks, editors, |
22 | | -and ecosystems, it's **very helpful** if you can provide |
23 | | -a link to information supporting your pull request. |
24 | | -Up-to-date, canonical documentation that mentions the files |
25 | | -to be ignored is best. |
| 50 | +- **Please only modify *one template* per pull request**. This helps keep pull |
| 51 | + requests and feedback focused on a specific project or technology. |
26 | 52 |
|
27 | | -This ensures we can efficiently go through pull requests |
28 | | -and keep quality high. |
| 53 | +In general, the more you can do to help us understand the change you’re making, |
| 54 | +the more likely we’ll be to accept your contribution quickly. |
29 | 55 |
|
30 | | -## Global Ignores |
| 56 | +Please also understand that we can’t list every tool that ever existed. |
| 57 | +Our aim is to curate a collection of the *most common and helpful* templates, |
| 58 | +not to make sure we cover every project possible. If we choose not to |
| 59 | +include your language, tool, or project, it’s not because it’s not awesome. |
31 | 60 |
|
32 | | -git has a global configuration that applies rules to all of |
33 | | -your projects. For example: |
| 61 | +## Contributing workflow |
34 | 62 |
|
35 | | - git config --global core.excludesfile ~/.global_ignore |
| 63 | +Here’s how we suggest you go about proposing a change to this project: |
| 64 | + |
| 65 | +1. [Fork this project][fork] to your account. |
| 66 | +2. [Create a branch][branch] for the change you intend to make. |
| 67 | +3. Make your changes to your fork. |
| 68 | +4. [Send a pull request][pr] from your fork’s branch to our `master` branch. |
| 69 | + |
| 70 | +Using the web-based interface to make changes is fine too, and will help you |
| 71 | +by automatically forking the project and prompting to send a pull request too. |
| 72 | + |
| 73 | +[fork]: http://help.github.com/forking/ |
| 74 | +[branch]: https://help.github.com/articles/creating-and-deleting-branches-within-your-repository |
| 75 | +[pr]: http://help.github.com/pull-requests/ |
36 | 76 |
|
37 | | -... will apply the rules in ~/.global_ignore for all of your repos. |
| 77 | +## License |
38 | 78 |
|
39 | | -This is useful if you use an editor (like Emacs) that drops backup files, |
40 | | -or if you work in an environment that generates binary or intermediate |
41 | | -files that are always ignored. |
| 79 | +[MIT](./LICENSE). |
0 commit comments