| 1 | = Working with Git = |
| 2 | |
| 3 | Here are some tips for developing GeoNetwork with Git, a.k.a. SVN. |
| 4 | This is ''not'' a guide to Git or to version control in general. |
| 5 | |
| 6 | Github is the hosting platform for Geonetwork and lots of information |
| 7 | can be found on their website: https://help.github.com/ |
| 8 | |
| 9 | == Getting the source == |
| 10 | |
| 11 | If you're starting from scratch and just want to get the latest version of the trunk, |
| 12 | make yourself a working directory and change into it. Then download the sources from GitHub: |
| 13 | |
| 14 | https://github.com/geonetwork/core-geonetwork/zipball/master |
| 15 | |
| 16 | Alternatively, if you are comfortable using Git you can clone it locally with the command: |
| 17 | |
| 18 | {{{ |
| 19 | git clone --recursive git://github.com/geonetwork/core-geonetwork.git |
| 20 | }}} |
| 21 | |
| 22 | or with one of the many Git Gui applications |
| 23 | |
| 24 | * Github app for Mac: http://mac.github.com |
| 25 | * Github app for Windows: http://windows.github.com/ |
| 26 | * Git tower (Mac): http://www.git-tower.com/ |
| 27 | * !SmartGit (Mac, Linux, Windows): http://www.syntevo.com/smartgit/index.html |
| 28 | |
| 29 | Commandline, !SmartGit or Git tower are recommended for those who want to develop because they handle Submodules. |
| 30 | |
| 31 | Go to HowToCompile. |
| 32 | |
| 33 | == Forking Geonetwork (the preferred git way) == |
| 34 | |
| 35 | Serious developers, particularly those working in a team, who want to make non-trivial contributions to GeoNetwork will want to fork geonetwork on github. See the github instructions: https://help.github.com/. There are good guides on setting up Git as well as how to fork repositories (like Geonetwork) and how to make pull requests. |
| 36 | |
| 37 | This will enable you to do checkouts, diffs, etc., very cheaply. |