Vector layer versioning in NextGIS Web

Take full control over your geodata

Collaborative editing is one of the most vulnerable points of working with geodata. As the project lasts and evolves and the number of editors increases, so does the risk of accidentally deleting vital data or making another drastic mistake.

The costs of not being able to undo the edits could be disastrous. Besides, it’s very tricky to control the project when you don’t know who and when modifies the data.

To make working with vector data safer more and controllable we added versioning to NextGIS Web.

What’s version control

Some typical issues while working in a team are:

  • nobody knows who and when modified a feature;
  • it’s hard to restore data to “the way it was yesterday” if something goes wrong;
  • mistakes are discovered too late;
  • without objective information and stats for the data editing it’s hard to estimate the workload and timing;
  • if you outsource data editing, there’s no transparency in what the third party’s doing exactly.

Version control solves these problems by allowing to record the edit history and safely revert to one of the previous states of the data.

How it works in NextGIS Web

You can enable feature versioning for any vector layer. When it’s on, all edits to the layer are recorded indefinitely. In most cases, versioning is already enabled by default.

Versioning settings

The version history records an entry if anyone:

  • creates a feature;
  • modifies geometry, attribute values, attachments or description of a feature;
  • deletes a feature;
  • restores a previously deleted feature.

Each entry has information about the type of edits, their author, date and time.

It doesn’t matter where you edit the data: on a Web Map, via feature table interface in NextGIS Web, in a mobile or desktop app, or using API. Regardless of the process, the edits are recorded and stored.

You can view the entire history of the vector layer directly from the Web interface by clicking “Version history”..

Version control

It opens a table containing the version information: date, author and edit details. The entries can be filtered by date.

But it’s more than just a log or description. Each version is a snapshot of the layer at the time. You can revert to any of these states. The undone edits are not lost, however. All the history entries are preserved, and reverting to one of the versions just creates a new entry that documents restoring the layer to the chosen state. So if you need to undo the reverting, you can do that just as simply.

Version table

Another option is to save a particular state of the layer as a new dataset. In GIT terms we’d call it “branching”. This way you can get a snapshot of the layer at a given moment to examine it in minute details or split data operations between branches.

NextGIS Web API also provides full access to version history. You can use it to automate customized reports or to integrate the data into external analysis frameworks.

How versioning helps teamwork in QGIS

Versioning allowed us to implement a comprehensive system for managing the data stored in the NextGIS Web cloud from QGIS. Desktop app can query the server at any time to check for updates and instead of re-loading the entire, potentially huge, dataset, to get just the information about the changes.

On top of making data transfer much faster, it assures a safe conflict resolution and keeps all the applications using the data “aware” of its current state. It even allows for safe offline work. After the network connection is restored, all devices methodically “compare notes” and load the changes. No more need to upload the entire dataset to cross-check the edits and synchronize everything manually.

QGIS project

Thanks to versioning, you can work in big teams with multiple users simultaneously editing the same datasets from a number of QGIS instances and viewing the edits made by their colleagues in real time.

Versioning settings in QGIS

If several people make contradicting changes to the same feature, a dialog pops up. The editors can resolve the conflict by picking a version.

Conflict resolution window

All the changes made on all the devices are of course visible on the version history page in NextGIS Web, ensuring full control over the process.

Additional tools

We are constantly introducing new features for version control, some of them are added to NextGIS Toolbox, our online geoprocessing platform. You can already try out two handy tools for working with version history.

Contribution activity for the resource

This tool generates a detailed report of editor activity for the selected time period. Input the ID of a layer, resource group or Web Map. The output HTML file describes the changes of the data overall as well as split by individual layers and editors. It’s an easy way to see who contributed what to your project.

Go to the Tool

Report example

Feature history

This tool provides a deeper analysis of changes made to a particular feature. It may be useful if you have rapidly-changing features in your layer, for instance, monitor a moving object or an affected area with unstable boundaries. The tool creates a GeoPackage file displaying all the states of the feature for the selected time period.

Go to the Tool

Object version history

Scenarios that benefit the most from versioning

Versioning is crucial if you have multiple people working on the same datasets:

  • You have a team that collaboratively creates a geodatabase. For example, digitizes orthoimagery, enters data from raster maps, handles big flows of field data.
  • You outsource database creation and need to monitor productivity and deadlines.
  • You work with dynamic data and modify it constantly. In all these scenarios it’s essential to have a way to study previous states of the data and analyse the dynamics.
  • Your project is a collaboration of multiple organizations and companies. When each participant has different internal company process, having a unified version control system is vital.
Orthoimagery

Overall, having a history of all the changes to fall back to is good even for solo projects.

Get your geodata under contol

Start storing it in NextGIS Web instead of scattered files and DIY attempts at database servers. You can start your own Web GIS:

  • right now, just sign up to the NextGIS Web cloud;
  • on your company server.

Documentation

Comments are closed.