LocationTech GeoGig

Primary tabs

LocationTech GeoGig is a Distributed Version Control System (DVCS) specially designed to handle geospatial data efficiently. It takes inspiration from the source code versioning system Git, but has an approach suited to the spatial data it manages. GeoGig efficiently handles very large binary data, divided up into features with the opportunity to optimise spatial operations using a spatial index. This is in contrast to Git which handles large text data, divided up into lines.

Users are able to import raw geospatial data (currently from Shapefiles, PostGIS, MS SQLServer, or SpatiaLite) in to a repository where every change to the data is tracked. These changes can be viewed in a history, reverted to older versions, branched into sandboxed areas, merged back in, and pushed to remote repositories.

GeoGig is available as a command line tool with the following commands:

  • add             Add features to the staging area
  • apply           Apply a patch to the current working tree
  • branch          List, create, or delete branches
  • cat             Provide content of an element in the repository
  • checkout        Checkout a branch or paths to the working tree
  • cherry-pick     Apply the changes introduced by existing commits
  • clean           Deletes untracked features from working tree
  • clone           Clone a repository into a new directory
  • commit          Record staged changes to the repository
  • config          Get and set repository or global options
  • conflicts       Shows existing conflicts
  • diff            Show changes between commits, commit and working tree, etc

GeoGig is also provided as a Java Library for direct use.

Latest Releases: 

From December 22nd, 2016 to November 15th, 2017

Active Member Companies: 
Member companies supporting this project over the last three months.
Contribution Activity: 
Commits on this project (last 12 months).