RailsBridge wouldn't be what it is without your help. Thanks for contributing.
We ask that contributions be made as pull requests via GitHub. If those words are totally foreign to you, see here.
Here's a couple of tricks to grease the wheels and make it easy for the maintainers to love you. ❤️
-
If you have an existing fork, please make sure it's up to date. It just makes your life easier! If not, make sure you fork before cloning, otherwise you'll need to spend some time juggling remotes. Look at the section "Keep your fork synced" in GitHub's Fork A Repo article.
-
Create a local topic branch before you start working. This branch is going to be named for what you plan to change.
fix-typo-in-slides
,move-resources
, andmountain-lion-support
are all good names for topic branches. If you've never created a local branch before, you can usegit checkout -b new-branch-name
.
-
Please, please, please run
bundle exec rake
from the terminal before you submit. It not only runs our test suite but also checks the docs for syntax errors. -
Push to a branch on GitHub. Just like you developed in a local branch, you should push to a branch of your repo on GitHub as well. The
master
branch is best used as a clean copy of the upstream docs repo in case you need to make some unrelated changes. To push to a branch, if your branch is named "fix-typo-in-slides", usegit push origin fix-typo-in-slides
.
-
Read the GitHub Guide on Forking, especially the part about Pull Requests.
-
Remember, pull requests are submitted from your repo, but show up on the upstream repo.
- Every pull request will receive a response from the team.
- Not every pull request will be merged as is.
- Not every pull request will be merged at all.
- If a pull request falls significantly behind master, we may ask that you close it, rebase your changes off of master, and submit a new pull request.
- Feel free to "ping" the team by adding a short comment to your pull request if it's been more than a week with no reply
-
go back to your fork and keep it up to date, e.g.
git checkout master git pull upstream master git push origin master
-
you can also delete your topic branch if you like
git branch -dr fix-typo-in-slides
Relax, you came to the right place. In order to contribute, you'll need to be able to familiarize yourself with some concepts from git and GitHub. It's going to be a lot of information, but you're ✨awesome✨! So you'll be fine.
First, you'll need a GitHub account, which is totally free. You can sign up here.
Next, browse the GitHub Help site and the GitHub Guides. The Help Site is more technical, and the Guides are very easy to understand tutorials.
You'll want to read about forking and then make your own fork of railsbridge/docs. Once you've done so, you can clone it and get started by reading up on what to do when submitting a pull request, and read up on pull requests themselves.
If this is all too much, or you'd like a helping hand, @nuclearsandwich has volunteered to help anyone who wants to contribute do so. His email is behind that profile link.
If you haven't taken the time yet, go through the Git Immersion lab at http://gitimmersion.com. Do it. It's worth it no matter how much git-fu you have.
Also, Pro Git is a great (and free!) book about Git.
We apologize for how long this document is! Hopefully, it addressed most of your concerns about git, contributing, and GitHub. Feel free to ask more questions on the railsbridge-workshops mailing list. And we're open to any suggestions about improvements, including to this document.