paulfitz / coopy

distributed spreadsheets with intelligent merges
http://share.find.coop
Other
100 stars 12 forks source link

The COOPY toolbox

Build Status

Diffing, patching, merging, and revision-control for spreadsheets and databases. Focused on keeping data in sync across different technologies (e.g. a MySQL table and an Excel spreedsheet).

The main programs

Supported data formats

Supported diff formats

Example uses

Features

Algorithm

The core of the COOPY toolbox is a 3-way comparision between an ancestor and two descendents. First, rows are compared using bags of substrings drawn from across all columns. Once corresponding rows are known, columns are compared, again using bags of substrings. Row and column assignments are optimized and ordered using a Viterbi lattice. Once the pairwise relationships between each descendent and its ancestor are known, differences are computed, and a good merged ordering is determined (again using the Viterbi algorithm).

Installing on OSX

Installing on Windows

Installing on Linux

Building

Status

COOPY targets a stable, fully-documented release at version 1.0. At the time of writing, the version number is just beyond 0.5. It is about half way there.

Apparently COOPY is the closest thing right now to git for data:

But if you deal with big data sets and don't care so much about diffs and patches and whatnot, you may want to look at dat: