-
Notifications
You must be signed in to change notification settings - Fork 533
Creates CONTRIBUTOR and MAINTAINERS files #353
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
8 commits
Select commit
Hold shift + click to select a range
3cd3d9e
* moving CHANGELOG to markdown to get benefits of the format that it …
tarcinil 8f21f44
fixing dco anchor
tarcinil 246c8ee
using markdown formats
tarcinil 6dcf2fc
adding pull request requirements and license information
tarcinil 02d9a59
adding github templates for issues/pull requests
tarcinil ea2a405
Merge branch 'master' into feature/349
tarcinil 5e9d79e
fixing comments to PR
tarcinil 561f751
Merge branch 'master' into feature/349
perlun File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
# Contributing to ruby-git | ||
|
||
Thank you for your interest in contributing to this project. | ||
|
||
These are mostly guidelines, not rules. | ||
Use your best judgment, and feel free to propose changes to this document in a pull request. | ||
|
||
#### Table Of Contents | ||
|
||
[How Can I Contribute?](#how-can-i-contribute) | ||
* [Submitting Issues](#submitting-issues) | ||
* [Contribution Process](#contribution-process) | ||
* [Pull Request Requirements](#pull-request-requirements) | ||
* [Code Review Process](#code-review-process) | ||
* [Developer Certification of Origin (DCO)](#developer-certification-of-origin-dco) | ||
|
||
|
||
## How Can I Contribute? | ||
|
||
### Submitting Issues | ||
|
||
We utilize **GitHub Issues** for issue tracking and contributions. You can contribute in two ways: | ||
|
||
1. Reporting an issue or making a feature request [here](https://github.com/ruby-git/ruby-git/issues/new). | ||
2. Adding features or fixing bugs yourself and contributing your code to ruby-git. | ||
|
||
### Contribution Process | ||
|
||
We have a 3 step process for contributions: | ||
|
||
1. Commit changes to a git branch in your fork. Making sure to sign-off those changes for the [Developer Certificate of Origin](#developer-certification-of-origin-dco). | ||
2. Create a GitHub Pull Request for your change, following the instructions in the pull request template. | ||
3. Perform a [Code Review](#code-review-process) with the project maintainers on the pull request. | ||
|
||
### Pull Request Requirements | ||
In order to ensure high quality, we require that all pull requests to this project meet these specifications: | ||
|
||
1. Unit Testing: We require all the new code to include unit tests, and any fixes to pass previous units. | ||
2. Green CI Tests: We are using [Travis CI](https://travis-ci.org/ruby-git/ruby-git) to run unit tests on various ruby versions, we expect them to all pass before a pull request will be merged. | ||
3. Up-to-date Documentation: New methods as well as updated methods should have [YARD](https://yardoc.org/) documentation added to them | ||
|
||
### Code Review Process | ||
|
||
Code review takes place in GitHub pull requests. See [this article](https://help.github.com/articles/about-pull-requests/) if you're not familiar with GitHub Pull Requests. | ||
|
||
Once you open a pull request, project maintainers will review your code and respond to your pull request with any feedback they might have. | ||
|
||
The process at this point is as follows: | ||
|
||
1. One thumbs-up (:+1:) is required from project maintainers. See the master maintainers document for the ruby-git project at <https://github.com/ruby-git/ruby-git/blob/master/MAINTAINERS.md>. | ||
2. When ready, your pull request will be merged into `master`, we may require you to rebase your PR to the latest `master`. | ||
|
||
### Developer Certification of Origin (DCO) | ||
|
||
Licensing is very important to open source projects. It helps ensure the software continues to be available under the terms that the author desired. | ||
|
||
ruby-git uses [the MIT license](https://github.com/ruby-git/ruby-git/blob/master/LICENSE) | ||
|
||
Detail about the LICENSE can be found [here](https://choosealicense.com/licenses/mit/) | ||
|
||
To make a good faith effort to ensure these criteria are met, ruby-git requires the Developer Certificate of Origin (DCO) process to be followed. | ||
|
||
The DCO is an attestation attached to every contribution made by every developer. | ||
|
||
In the commit message of the contribution, the developer simply adds a Signed-off-by statement and thereby agrees to the DCO, which you can find below or at <http://developercertificate.org/>. | ||
|
||
``` | ||
Developer's Certificate of Origin 1.1 | ||
|
||
By making a contribution to this project, I certify that: | ||
|
||
(a) The contribution was created in whole or in part by me and I | ||
have the right to submit it under the open source license | ||
indicated in the file; or | ||
|
||
(b) The contribution is based upon previous work that, to the | ||
best of my knowledge, is covered under an appropriate open | ||
source license and I have the right under that license to | ||
submit that work with modifications, whether created in whole | ||
or in part by me, under the same open source license (unless | ||
I am permitted to submit under a different license), as | ||
Indicated in the file; or | ||
|
||
(c) The contribution was provided directly to me by some other | ||
person who certified (a), (b) or (c) and I have not modified | ||
it. | ||
|
||
(d) I understand and agree that this project and the contribution | ||
are public and that a record of the contribution (including | ||
all personal information I submit with it, including my | ||
sign-off) is maintained indefinitely and may be redistributed | ||
consistent with this project or the open source license(s) | ||
involved. | ||
``` | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
### Subject of the issue | ||
Describe your issue here. | ||
|
||
### Your environment | ||
* version of git and ruby-git | ||
* version of ruby | ||
|
||
### Steps to reproduce | ||
Tell us how to reproduce this issue. | ||
|
||
### Expected behaviour | ||
What did you expect to happen? | ||
|
||
### Actual behaviour | ||
What actually happened? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
# Maintainers | ||
|
||
When making changes to the system, this file tells you who needs to review your patch - you need at least two maintainers to provide a :+1: on your pull request. | ||
|
||
### Maintainers | ||
|
||
* [Per Lundberg](https://github.com/perlun) | ||
* [Vern Burton](https://github.com/tarcinil) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
### Your checklist for this pull request | ||
🚨Please review the [guidelines for contributing](../CONTRIBUTING.md) to this repository. | ||
|
||
- [ ] Ensure all commits include DCO sign-off. | ||
- [ ] Ensure that your contributions pass unit testing. | ||
- [ ] Ensure that your contributions contain documentation if applicable. | ||
|
||
### Description | ||
Please describe your pull request. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rvodden I'm not so sure we need the DCO. It feels a bit far-fetched to me. What do you think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm with you, in that it is a bit far fetched, but on the other hand all the OS projects i work on them have them... its only a check box, and I don't think its much to ask; On the other hand if we miss it out and have no legal protection at all we risk (admittedly and extremely low risk) losing all our work. I'm minded to leave it in...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree about the legal implications, they are valid. If it was only a check box, I would be fine with it, but as we have it written now:
...it means more work every time someone makes a single commit and submits it to the project. (OTOH, you can automate it by using
git commit -s
or--sign-off
, but still...)I think, if we rephrase this to be just a mere checkbox in the PR, I am fine with it.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@perlun I would be hesitate to change the standard for DCO without understand the legal implications that change could introduce. The DCO depends on the git Sign-Off-By because of the integrity that is built into Git, removing that could nullify the protections that are given to the maintainers of the project.
The IDE that I use has the ability to sign-off a commit built-in, but I do not believe that the addition of a
-s
in a command line string is asking too much either. GitHub has tools that can check for DCO on a commit.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Alright, I'm willing to give it a try. We can drop this requirement later if it turns out to be too burdensome.