mirror of
https://github.com/capistrano/capistrano
synced 2023-03-27 23:21:18 -04:00
Add CONTRIBUTING guidelines
This commit is contained in:
parent
71b9f5812a
commit
50164d0834
1 changed files with 91 additions and 0 deletions
91
CONTRIBUTING
Normal file
91
CONTRIBUTING
Normal file
|
@ -0,0 +1,91 @@
|
||||||
|
## CONTRIBUTING
|
||||||
|
|
||||||
|
**The issue tracker is intended exclusively for things that are genuine bugs,
|
||||||
|
or improvements to the code.**
|
||||||
|
|
||||||
|
If you have a user support query, or you suspect that you might just be holding
|
||||||
|
it wrong, drop us a line at [the mailing list]() or on [StackOverflow](). The
|
||||||
|
mailing list is moderated to cut down on spam, so please be patient, if you use
|
||||||
|
StackOverflow, make sure to tag your post with "Capistrano". (Not forgetting
|
||||||
|
any other tags which might relate, rvm, rbenv, Ubuntu, etc.)
|
||||||
|
|
||||||
|
Wherever you post please be sure to include the version of Capistrano you are
|
||||||
|
using, which versions of any plugins (*capistrano-rvm*, *capistrano-bundler*,
|
||||||
|
etc.). Proper logs are vital, if you need to redact them, go ahead, but be
|
||||||
|
careful not to remove anything important. Please take care to format logs and
|
||||||
|
code correctly, ideally wrapped to a sane line length, and in a mono spaced
|
||||||
|
font. This all helps us to gather a clear understanding of what is going wrong.
|
||||||
|
|
||||||
|
**If you really think that you found a bug, or want to enquire about a feature,
|
||||||
|
or send us a patch to add a feature, or fix a bug, please keep a few things in
|
||||||
|
mind:**
|
||||||
|
|
||||||
|
## When Submitting An Issue:
|
||||||
|
|
||||||
|
If you think there's a bug, please make sure it's really a bug in Capistrano.
|
||||||
|
As Capistrano sits on the (sometimes rough) edges between SSH, Git, the
|
||||||
|
network, Ruby, RVM, rbenv, chruby, Bundler, your Linux distribution, countless
|
||||||
|
shell configuration files on your end, and the server… there's a good chance
|
||||||
|
the problem lies somewhere else.
|
||||||
|
|
||||||
|
Please make sure you have reviewed the FAQs at http://www.capistranorb.com/.
|
||||||
|
|
||||||
|
It's really important to include as much information as possible, versions of
|
||||||
|
everything involved, anything weird you might be doing that might be having
|
||||||
|
side effects, include as much as you can in a [GitHub
|
||||||
|
Gist](https://gist.github.com/) and link that from the issue, with tools such
|
||||||
|
as Gist, we can link to individual lines and help work out what is going wrong.
|
||||||
|
|
||||||
|
If you are an experienced Ruby programmer, take a few minutes to get our test
|
||||||
|
suite running, and do what you can to get a test case written that fails, from
|
||||||
|
there we can understand exactly what it takes to reproduce the issue (as it's
|
||||||
|
documented with code)
|
||||||
|
|
||||||
|
## When Requesting a Feature:
|
||||||
|
|
||||||
|
We can't make everyone happy all of the time, and we've been around the block
|
||||||
|
well enough to know when something doesn't work well, or when your proposed fix
|
||||||
|
might impact other things.
|
||||||
|
|
||||||
|
We prefer to [start with
|
||||||
|
"no"](https://gettingreal.37signals.com/ch05_Start_With_No.php), and help you
|
||||||
|
find a better way to solve your problem, sometimes the solution is to [build
|
||||||
|
faster
|
||||||
|
horses](http://blog.cauvin.org/2010/07/henry-fords-faster-horse-quote.html),
|
||||||
|
sometimes the solution is to work around it in a neat way that you didn't know
|
||||||
|
existed.
|
||||||
|
|
||||||
|
Please don't be offended if we say no, and don't be afraid to fight your
|
||||||
|
corner, try and avoid being one of the [poisonous
|
||||||
|
people](https://www.youtube.com/watch?v=Q52kFL8zVoM)
|
||||||
|
|
||||||
|
## Submitting A Pull Request:
|
||||||
|
|
||||||
|
Pull requests are awesome, and if they arrive with decent tests, and conform to
|
||||||
|
the guidelines below, we'll merge them in as soon as possible, we'll let you
|
||||||
|
know which release we're planning them for (we adhere to
|
||||||
|
[semver](http://semver.org/) so please don't be upset if we plan your changes
|
||||||
|
for a later release)
|
||||||
|
|
||||||
|
* The code is MIT licenced, your code will fall under the same license if we merge it.
|
||||||
|
* We can't merge it without a [good commit
|
||||||
|
message](http://robots.thoughtbot.com/5-useful-tips-for-a-better-commit-message).
|
||||||
|
If you do this right, Github will use the commit message as the body of your
|
||||||
|
pull request, double win.
|
||||||
|
* If you are referencing an improvement to an existing issue (if we have not
|
||||||
|
yet merged it )
|
||||||
|
* Add an entry to the `CHANGELOG` under the `### master` section, but please
|
||||||
|
don't mess with the version.
|
||||||
|
* If you add a new feature, please make sure to document it, open a
|
||||||
|
corresponding pull request in [the
|
||||||
|
documentation](https://github.com/capistrano/documentation) and mention the
|
||||||
|
code change pull request over there, and Github will link everything up. If
|
||||||
|
it's a simple feature, or a new variable, or something changed, it may be
|
||||||
|
appropriate simply to document it in the generated `Capfile` or `deploy.rb`, or
|
||||||
|
in the `README`
|
||||||
|
* Take care to squash your commit into one single commit with a good message, it
|
||||||
|
saves us a lot of work in maintaining the CHANGELOG if we can generate it from
|
||||||
|
the commit messages between the release tags!
|
||||||
|
* Tests! It's tricky to test some parts of Capistrano, but do your best, it
|
||||||
|
might just serve as a starting point for us to build a reliable test on top of,
|
||||||
|
and help us understand where you are coming from.
|
Loading…
Reference in a new issue