This section describes the steps needed to install GeoGig.
GeoGig requires a Java 8 runtime environment. If not already on your system, install a Java JDK. Make sure the java executable is accessible (i.e. check your PATH environment variable) and the JAVA_HOME environment variable points to the JDK or JRE installation directory.
Command line executable¶
Pre-built binaries are available for GeoGig.
After the JDK is installed, navigate to the project’s releases page https://github.com/locationtech/geogig/releases/ and download the latest release. For example, geogig-1.1.0.zip.
Extract this archive to your preferred program directory. (For example,
The same packages can be used on Windows, OS X, and Linux.
Add the bin directory to your
Terminalfrom the Utilities folder in the Applications directory.
- Open the bash profile with nano.
$ nano ~/.bash_profile
- Specify the java home directory inside the profile by adding the following line to the end of the file.
- Add the bin directory from your GeoGig install location to the
PATHby adding the following line at the end of the file. In this case, GeoGig was extracted to
- Save the bash profile with Ctrl+O, and exit using Ctrl+X.
- Reload the profile.
$ source ~/.bash_profile
- Verify GeoGig functionality.
$ geogig --help usage: geogig [--repo <URI>] <command> [<args>] The most commonly used geogig commands are: ...
- Open up
Systemfrom the Windows control panel and click on
Advanced system settings. Depending on how your control panel is displayed, this may be under the
System and Securitysection.
- Click on
- Look through the
System Variablessection and find the
Path) variable and click
Edit.... If it does not exist, click
- Add the bin directory from your GeoGig install location by adding the following path to the end of the existing value, separated by a semicolon. In this case, GeoGig was extracted to
In newer versions of windows, the
Pathvariable will be displayed as a list. In this case, simply add a new entry for the above path.
OKthrough each window to save the changes.
- Verify GeoGig functionality in a new Command Prompt window.
> geogig --help usage: geogig [--repo <URI>] <command> [<args>] The most commonly used geogig commands are: ...
- Open up
When finished, you should be able to run the
geogig --help and see the command usage.
A GeoServer extension is available to allow GeoServer to interact with a GeoGig repository and use it as a datastore. It enables a GeoGig repository to be exposed as a remote for cloning, pushing, and pulling, as well as to publish its data via OGC services.
The GeoServer GeoGig plug-in binaries are pre-compiled and ready to be downloaded for the most recent versions of GeoServer. Refer to the project’s releases page https://github.com/locationtech/geogig/releases/ and download the latest release. For example, GeoServer 2.11.x plugin.
Once downloaded, unzip the contensts of the
geoserver-<version>-geogig-plugin.zip file inside GeoServer’s
WEB-INF/lib directory and restart GeoServer.
PostgreSQL JDBC Driver version¶
GeoServer versions lower than 2.12 come with an older version of the PostgreSQL JDBC driver than the one required by GeoGig.
GeoGig requires version
42.1.1 (included in the geogig plugin zip file as
postgresql-42.1.1.jar), while GeoServer comes
GeoGig needs the above mentioned version or higher in order to be able to transferring data to and from the postgres database in pure binary form.
Given the way servlet containers (such as Apache Tomcat or Jetty) work, if the two jar files end up being in GeoSevrer’s
one or the other may be loaded first, in a non deterministic way. Hence you’ll need to remove the older jar file from GeoSevrer’s
before restarting GeoServer and after installing the GeoGig plugin as described above.
Note GeoGig will verify the correct driver version is in use and won’t work if the old driver is still installed and loaded.
Building from source code¶
If you’re interested in building GeoGig yourself, go to the project’s source code repository and follow the instructions there: https://github.com/locationtech/geogig
Running on Windows¶
GeoGig for Windows is only available for Windows 64-bit versions.
GeoGig uses RocksDB as the default storage backend and for some temporary storage needs. On Windows machines, the libraries for RocksDB require the Visual C++ Redistributable for Visual Studio 2015. If you experience an
UnsatisfiedLinkError exception when running GeoGig, make sure you have the above dependency installed on your system.
Only Windows 10 supports colored text using ANSI escape sequences. On previous versions of windows, ANSI support can be enabled by installing ANSICON and setting the
ansi.enabled config parameter to
true. See the config section Configuring a GeoGig repository.
- Download the ANSICON zip.
- Unzip the file to it’s own location, such as
- Add the ANSICON location to the Windows PATH, found under
System -> Advanced System Properties -> Environment Variables
- Open a
powershellterminal and type
ansiconto confirm the PATH variable is set correctly. If the PATH is correct information about the Windows version will be printed in the console. This command will enable ANSICON for this terminal session only.
ansicon Microsoft Windows [Version 6.3.9600] (c) 2013 Microsoft Corporation. All rights reserved.
- To make ANSICON load automatically with new terminals type:
- ANSICON is now enabled by default in all terminals.
- To remove ANSICON from the terminal defaults type:
- Remove ANSICON from the windows
- Delete the ANSICON folder from the location it was installed.