Metadata records all information about the files stored into the system and their relations. This document works out what tables and table contents are needed by the system. User management tables are defined here.
; Data Description
Contains details about one file in the data storage area. This table holds the handle of the file, its size, its type, the user that owns it, ...
The metadata table contains:
an id for the content
an SHA1 sum of the content file
the MIME-Type of the data
the size of the file
the user that owns the file (user id)
This shall be realized as modules: ; Data history
Contains version information about the files. Some document scans for example are reworked and made better. The newest file in the history is the most up-to-date and has a special state.
Groups of files can be defined as well as groups of groups
Many to many relation for tags to files. Tags are also defined in a hierarchical way.
3rd party software
store big binaries outside git
git-annex: https://git-annex.branchable.com/ https://docs.gitlab.com/ee/workflow/git_annex.html GitMinutes #16: Joey Hess on git-annex
bup http://git-annex.branchable.com/special_remotes/bup/ (makes also optionaly use of PAR2 sums for correction)
See :git_annex;start page for details