Version 86 (modified by 6 years ago) ( diff ) | ,
---|
Downloading GRASS Source
(Note: for binary installers, go here)
Table of Contents
- Packaged Source
- Weekly snapshots
- Subversion GRASS main source code repository
- Subversion GRASS Addons source code repository
- Subversion GRASS Sandbox source code repository
- Subversion GRASS repository dumpstreams
- Online browseable live web interfaces to source code repository
- SVN mirrors
- Historical CVS
- Historical checkouts
- Compilation notes for various operating systems
Packaged Source
The source code of all official releases is available for download from:
- For a release download list (GRASS GIS 5.x to 7.x), see Release overview page
- Download at http://grass.osgeo.org/download/ or directly from
- http://grass.osgeo.org/grass74/source/ (current)
- http://grass.osgeo.org/grass72/source/ (old)
- http://grass.osgeo.org/grass70/source/ (very old)
- http://grass.osgeo.org/grass64/source/ (historical)
- http://grass.osgeo.org/grass54/source/ (historical)
Weekly snapshots
Source code tarballs are available from here:
- http://grass.osgeo.org/grass77/source/snapshot/ (development)
- http://grass.osgeo.org/grass76/source/snapshot/ (upcoming)
- http://grass.osgeo.org/grass74/source/snapshot/ (stable)
- http://grass.osgeo.org/grass72/source/snapshot/ (old stable)
- http://grass.osgeo.org/grass70/source/snapshot/ (very old stable)
- http://grass.osgeo.org/grass64/source/snapshot/ (historical)
Subversion GRASS main source code repository
The GRASS GIS software lives in the Subversion (SVN) source control system. It can be browsed online using the Browse Source button on the top bar. With the subversion client software installed, various versions can be accessed:
GRASS 7.7
(used to have the pseudo-name 7.5.svn till August 2018) (used to have the pseudo-name 7.3.svn till November 2017)
The development branch (trunk) version of GRASS 7 can be extracted using the command:
svn checkout https://svn.osgeo.org/grass/grass/trunk grass7_trunk #Subsequent updates: svn up
GRASS 7.6
To extract the current 7.6.x release branch version (upcoming stable), use the command:
svn checkout https://svn.osgeo.org/grass/grass/branches/releasebranch_7_6 grass76_release #Subsequent updates: svn up
GRASS 7.4
To extract the current 7.4.x release branch version (current stable), which continuously receives bugfixes, use the command:
svn checkout https://svn.osgeo.org/grass/grass/branches/releasebranch_7_4 grass74_release #Subsequent updates: svn up
GRASS 7.2
To extract the current 7.2.x release branch version (stable), which continuously receives bugfixes, use the command:
svn checkout https://svn.osgeo.org/grass/grass/branches/releasebranch_7_2 grass72_release #Subsequent updates: svn up
GRASS 7.0
Note: not recommended any more since May 2016
To extract the current 7.0.x release branch version (stable), which continuously receives bugfixes, use the command:
svn checkout https://svn.osgeo.org/grass/grass/branches/releasebranch_7_0 grass70_release #Subsequent updates: svn up
GRASS 6.4
To extract the current state of the old 6.4.x release branch version (very old stable), which rarely receives bugfixes, use the command:
svn checkout https://svn.osgeo.org/grass/grass/branches/releasebranch_6_4 grass64_release
To extract a specific release, e.g. the 6.4.0 release candidate 5 (RC5) from 2009, use the command:
svn checkout https://svn.osgeo.org/grass/grass/tags/release_20090609_grass_6_4_0RC5 grass640_rc5
Committing code to SVN (developers with write access)
Note: Write access to the Subversion repository is governed by RFC 2: Legal aspects of code contributions. Committers should take care to use https for access, and use their OSGeo Userid for authentication. See also How-To Contribute.
A commit command might look something like:
svn commit -m "Distinguish between raster and vector backends (bug #999)" main.c --username glynn
After your first commit SVN will remember your OSGeo user id and password so --username only has be used the first time.
To add a new directory, please use (after checking that tmp files were removed and file permissions are appropriate):
svn add newdir svn commit -m "New xyz functionality uploaded" newdir
Subversion GRASS Addons source code repository
Want to contribute? Read on here
With the subversion client software installed, the current GRASS Addons can be extracted using the command:
svn checkout https://svn.osgeo.org/grass/grass-addons grass_addons
Update access to the Subversion Addons repository is governed by RFC 2: Legal aspects of code contributions. Committers should take care to use https for access, and use their OSGeo Userid for authentication. A commit command might look something like:
svn commit -m "Stereo DEM creation" main.c --username glynn
After your first commit SVN will remember your OSGeo user id and password so --username only has to be used the first time.
To add a new directory, please use (after checking that tmp files were removed and file permissions are appropriate):
svn add newdir svn commit -m "New xyz functionality uploaded" newdir
Subversion GRASS Sandbox source code repository
The "sandbox" repository is a place for collaborative experiments and alpha-ware not quite ready for incubation in the addons repository. GRASS developers can create directories for themselves and use it as they like, just keep everything GPL>=2 compatible in the usual way!
With the subversion client software installed, the Sandbox repository can be extracted with the command:
svn checkout https://svn.osgeo.org/grass/sandbox grass-sandbox
Write access to the Subversion Sandbox repository is again governed by RFC 2: Legal aspects of code contributions. Committers should take care to use https for access, and use their OSGeo Userid for authentication. Commit commands will follow the same method as for the addons repository shown above.
Subversion GRASS repository dumpstreams
Incremental dumpstreams of GRASS SVN repository are available at http://svn.osgeo.org/dumps/grass/.
Online browseable live web interfaces to source code repository
- TracBrowser interfaces:
- ViewCVS interface (Subversion backup note: svnsync runs 3 times per day)
- Raw SVN server HTML interface
SVN mirrors
- http://svnmirror.osgeo.org is a mirror of all OSGeo repositories incl. GRASS that is on a 15 minute svnsync. The physical machine is located at TelaScience.org in San Diego, CA (USA).
- A second GRASS SVN mirror is here at the Czech Technical University in Prague (CZ), Faculty of Civil Engineering.
Historical CVS
- Our old GRASS 5/6.1 CVS at freegis.org (ViewCVS interface; no longer updated since move to OSGeo SVN)
- A copy of GRASS-CVS has been saved here at the Czech Technical University in Prague (CZ), Faculty of Civil Engineering.
Historical checkouts
You can download the source code as it existed on a particular day as follows:
svn co -r '{2008-09-01}' https://svn.osgeo.org/grass/grass/branches/develbranch_6 grass6_20080901
You can then step forward in time to another date as follows:
svn update -r '{2008-09-04}'
This can be useful to help narrow down which change introduced some weird behaviour.
While SVN history for many individual files exists back to 1999, if you want to go back in time to GRASS 5 days you should use the GRASS 5 CVS instead. The directory layout was widely changed between GRASS 5 and 6 and the earliest version of GRASS 6 that will actually compile on its own will be just before the 5.7.0 development release.
Compilation notes for various operating systems
Please see here.