Do you remember the many advantages Git has against Subversion (SVN)? One of those many advantages is the fact that in Git, you can send pull requests in order to directly collaborate with the community, without even the need of being an official Hercules dev, and if you contribute enough you can surely become a dev if you want. Well then, this is an – as detailed as possible – guide on how to make them.
First of all: What is a pull request? It's a way of telling the original devs of a (commonly open-sourced) project what changes you've made yourself on their project supposedly for the better, and kindly ask them (request) to merge it (pull). In short, it's a way of collaborating to a project without the need of being related at all to it. Obviously, your pull request may be rejected if it doesn't meet some requirements, but this is another story.
Git does also offer its own tools for pull requests (more info), but they're incompatible with the ones GitHub has. Moreover, GitHub pull request tools are easier to use than Git's.
What steps are required in order to do a pull request? In abstract, you'll have to:
- Sign up for a GitHub account, if you don't have it already.
- Fork Hercules project in GitHub, if you haven't done this already.
- Clone your previous fork to a local repository in your computer, if you haven't done this already.
- Work on your fork.
- Commit your changes to your local repository.
- Push the changes you've previously committed to your remote repository on GitHub.
- Make the aforementioned pull request to the Hercules official repository.
Steps 3 and 5 have already been shown on the Obtaining Hercules guide by Ind (Obtaining Hercules through Git on *insert OS here* and Troubleshooting sections). These two steps will be slightly reviewed, but expect a fully detailed how-to in the others.
By the way, GitHub also has its own (generic) guides on how to fork a repo and then make a pull request, which also explain the toughest parts of this guide (though they're not so tough) and cover steps 2-6 (supposing you have a Git console). You're encouraged to go and read them if you want.
Well, here we go with the guide!
Step 1: Sign up for a GitHub account
Step 2: Fork Hercules project in GitHub
Steps 3 to 6: Local computer work
Step 7: (Finally) submitting the pull request
Congratulations! You have successfully made your first pull request on Hercules! This is a reason to be proud of yourself, isnt it?