aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/model.md12
-rw-r--r--entity/dag/example_test.go5
2 files changed, 14 insertions, 3 deletions
diff --git a/doc/model.md b/doc/model.md
index 0aad4789..955aa07a 100644
--- a/doc/model.md
+++ b/doc/model.md
@@ -1,9 +1,17 @@
Entities data model
===================
-If you are not familiar with [git internals](https://git-scm.com/book/en/v1/Git-Internals), you might first want to read about them, as the `git-bug` data model is built on top of them.
+This document explains how git-bug's reusable distributed data structure in git is working. This data structure is capable of:
+- storing an entity and its complete history in git
+- carry signed authorship of editions
+- use git remotes as a medium for synchronisation and collaboration
+- merge conflicts
+- respect the rules you define as to what edition are possible
+- carry attached media
+
+If you are looking for a different format or to see how you can easily make your own, checkout [the example code](../entity/dag/example_test.go).
-In a different format, see how you can easily make your own [distributed data structure](../entity/dag/example_test.go).
+If you are not familiar with [git internals](https://git-scm.com/book/en/v1/Git-Internals), you might first want to read about them, as the `git-bug` data model is built on top of them.
## Entities (bug, author, ...) are a series of edit operations
diff --git a/entity/dag/example_test.go b/entity/dag/example_test.go
index 948d6aeb..e6f5db86 100644
--- a/entity/dag/example_test.go
+++ b/entity/dag/example_test.go
@@ -11,7 +11,10 @@ import (
"github.com/MichaelMure/git-bug/repository"
)
-// This file explains how to define a replicated data structure, stored and using git as a medium for
+// Note: you can find explanations about the underlying data model here:
+// https://github.com/MichaelMure/git-bug/blob/master/doc/model.md
+
+// This file explains how to define a replicated data structure, stored in and using git as a medium for
// synchronisation. To do this, we'll use the entity/dag package, which will do all the complex handling.
//
// The example we'll use here is a small shared configuration with two fields. One of them is special as