= Working with Git = Here are some tips for developing GeoNetwork with Git, a.k.a. SVN. This is ''not'' a guide to Git or to version control in general. Github is the hosting platform for Geonetwork and lots of information can be found on their website: https://help.github.com/ == Getting the source == If you're starting from scratch and just want to get the latest version of the trunk, make yourself a working directory and change into it. Then download the sources from GitHub: https://github.com/geonetwork/core-geonetwork/zipball/master Alternatively, if you are comfortable using Git you can clone it locally with the command: {{{ git clone --recursive git://github.com/geonetwork/core-geonetwork.git }}} or with one of the many Git Gui applications * Github app for Mac: http://mac.github.com * Github app for Windows: http://windows.github.com/ * !TortoiseGit (Windows): http://code.google.com/p/tortoisegit/ * Git tower (Mac): http://www.git-tower.com/ * !SmartGit (Mac, Linux, Windows): http://www.syntevo.com/smartgit/index.html Commandline, !SmartGit, !TortoiseGit or Git tower are recommended for those who want to develop because they handle Submodules. Go to HowToCompile. == Forking Geonetwork (the preferred git way) == 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. This will enable you to do checkouts, diffs, etc., very cheaply.