Using GitHub to Share with SparkFun
The term “pull request” is a little confusing to some people. After all, aren’t I asking to push files to your repository? In fact, no, you’re requesting the master repository’s owner to pull files from your repository. While the difference seems academic, it’s a good one to remember: you are actively requesting someone else to add something to their workflow, so don’t expect an instant response.
Pull Request Etiquette
As I mentioned above, a pull request, even a very important and well-structured one, is asking someone else to do work. To make it more likely that your pull request will be honored, here are some things you can do to make that work as easy as possible for the person at the receiving end:
- Keep it simple: Don’t rewrite a library completely and expect us to accept the pull request. We simply don’t have time to validate something that large.
- Keep it recent: Don’t submit a pull request if your repository is wildly out-of-date. If we have to muck through dozens of unrelated changes caused by age to figure out which change you’re submitting, we’ll probably reject the pull request.
- Don’t be offended: If we don’t accept your pull request, please don’t take it personally. We’ll let you know why we rejected it, and we may make the suggested changes anyway, if it’s easier for us to include them manually than by accepting the pull request.
Submitting a Pull Request
We’re in a good position now to walk through a pull request: we’ve got changes in our repository that we want to send the SparkFun repository.
Click the “Pull request” button. Again, the interface may have changed, but the button will still be there, somewhere.
Click the “Click to create pull request for this comparison” button. That’ll bring up this form:
Put in a title, and a description. Be thorough. Your chances of having your pull request accepted are greatly increased if the icon in the lower right indicates that the pull can be automatically merged.
Click the “Send pull request” button to submit your pull request. You’re done! All that’s left is for us to accept (or deny) the pull request.
Thanks for taking the time to contribute!