diff --git a/manual/develop.rst b/manual/develop.rst index d75d546937..848a0cfb09 100644 --- a/manual/develop.rst +++ b/manual/develop.rst @@ -115,16 +115,27 @@ commits:: Be careful to not include merges when using ``HEAD~n``. If you plan to do a lot of development on |app|, then the best method is to create a -`GitHub `_ account. Once you have an account, follow the -steps at `Setup Git `_ and -`Fork A Repo `_ to create your own fork of the -`calibre GitHub repository `_. Read -`Pushing to a remote `_ -to learn how to upload your commits to GitHub. +`GitHub `_ account. Below is a basic guide to setting up +your own fork of calibre in a way that will allow you to submit pull requests +for inclusion into the main |app| repository: + + * Setup git on your machine as described in this article: `Setup Git `_ + * Setup ssh keys for authentication to GitHub, as described here: `Generating SSH keys `_ + * Go to https://github.com/kovidgoyal/calibre and click the :guilabel:`Fork` button. + * In a Terminal do:: + + git clone git@github.com:/calibre.git + + Replace above with your github username. That will get your fork checked out locally. + * You can make changes and commit them whenever you like. When you are ready to have your work merged, do a:: + + git push + + and go to ``https://github.com//calibre`` and click the :guilabel:`Pull Request` button to generate a pull request that can be merged. + * You can update your local copy with code from the main repo at any time by doing:: + + git pull upstream -You can contribute your code in the form of `Pull Requests -`_. Generally, you should -create a new branch for any feature that is non-trivial. You should also keep an eye on the |app| `development forum `_. Before making