| | 3 | == Using Darcs == |
| | 4 | |
| | 5 | If you're going to be doing any real hacking on DDC its highly recommended that you use more than one Darcs branch to do it in. Darcs being a Distributed Version Control System (DVCS) means that its designed to make merging between branches easy. |
| | 6 | |
| | 7 | First of all you want a pristine version of ddc-head which you can get using: |
| | 8 | {{{ |
| | 9 | mkdir $HOME/ddc/ |
| | 10 | cd $HOME/ddc/ |
| | 11 | darcs get http://code.haskell.org/ddc/ddc-head |
| | 12 | }}} |
| | 13 | |
| | 14 | Then for each bug or feature you're working on you probably want a branch which should branch off your local ddc-head branch using: |
| | 15 | |
| | 16 | {{{ |
| | 17 | cd $HOME/ddc |
| | 18 | darcs get ddc-head bug-XXXX |
| | 19 | }}} |
| | 20 | |
| | 21 | You can then work on `bug-XXXX` independently from other bugs, while still keeping your `ddc-head` branch up-to-date with regular `darcs pull -a` commands. |
| | 22 | |
| | 23 | Finally, when you come up with a fix for the bug, you can do a `darcs push -a` in your `bug-XXXX` branch which pushes it to `ddc-head` where you can review it before doing either a `darcs send` command to send a patch to the mailing list or a `darcs push -a` if you have commit access to the upstream repo. |