@@ -30,34 +30,54 @@ Please clean up any messes that you find, and don't leave behind new messes for
30Idris developers and hackers try to adhere to something similar to the [successful git branching model](http://nvie.com/posts/a-successful-git-branching-model/).
30Idris developers and hackers try to adhere to something similar to the [successful git branching model](http://nvie.com/posts/a-successful-git-branching-model/).
31The steps are straightforward.
31The steps are straightforward.
33For those new to the project:
35For those new to the project:
35−1. Fork the `idris-dev` repo e.g.
37+1. Fork our [main development repository](https://github.com/idris-lang/Idris-dev) `idris-dev` on github e.g.
38+2. Clone your fork to your local machine:
41+$ git clone git@github.com/<your github user name>/Idris-dev.git
44+3. Add `idris-lang/Idris-dev` as a remote upstream
37− $ git clone git@github.com/<your github user name>/Idris-dev.git
46+```
38− $ git remote add upstream git@github.com:idris-lang/Idris-dev.git
47+$ git remote add upstream git@github.com:idris-lang/Idris-dev.git
50+### Existing Contributors
40For those already contributing to the project:
52For those already contributing to the project:
42−1. Ensure your existing clone is up-to-date with current HEAD e.g.
54+1. Ensure your existing clone is up-to-date with current `HEAD` e.g.
58+$ git merge upstream/master
44− $ git fetch upstream
61+### Remaining Steps
45− $ git merge upstream/master
47−The remaining steps are the same:
63+The remaining steps are the same for both new and existing contributors:
491. Create, and checkout onto, a topic branch on which to base you work.
651. Create, and checkout onto, a topic branch on which to base you work.
50 * This is typically the master branch.
66 * This is typically the master branch.
51 * For your own sanity, please avoid working on the `master` branch.
67 * For your own sanity, please avoid working on the `master` branch.
53− $ git branch fix/master/my_contrib master
70+$ git branch fix/master/my_contrib master
54− $ git checkout fix/master/my_contrib
71+$ git checkout fix/master/my_contrib
561. Make commits of logical units.
741. Make commits of logical units.
571. Check for unnecessary whitespace with
751. Check for unnecessary whitespace with
59− $ git diff --check
78+$ git diff --check
611. Make sure your commit messages are along the lines of:
811. Make sure your commit messages are along the lines of:
63 Short (50 chars or less) summary of changes
83 Short (50 chars or less) summary of changes
@@ -79,11 +99,15 @@ The remaining steps are the same:
791. Make sure you have added any necessary tests for your changes.
991. Make sure you have added any necessary tests for your changes.
801. Run all the tests to assure nothing else was accidentally broken.
1001. Run all the tests to assure nothing else was accidentally broken.
82− $ make test
103+$ make test
841. Push your changes to a topic branch in your fork of the repository.
1061. Push your changes to a topic branch in your fork of the repository.
86− $ git push origin fix/master/my_contrib
109+$ git push origin fix/master/my_contrib
881. Go to GitHub and submit a pull request to `idris-dev`
1121. Go to GitHub and submit a pull request to `idris-dev`