6 releases
Uses old Rust 2015
0.10.2 | Nov 20, 2018 |
---|---|
0.8.7 | Feb 2, 2018 |
0.8.6 | Jan 30, 2018 |
#1326 in Database interfaces
370KB
9K
SLoC
This crate contains the core API to access Pijul repositories.
The key object is a Repository
, on which Txn
(immutable
transactions) and MutTxn
(mutable transactions) can be started,
to perform a variety of operations.
Another important object is a Patch
, which encodes two different pieces of information:
-
Information about deleted and inserted lines between two versions of a file.
-
Information about file moves, additions and deletions.
The standard layout of a repository is defined in module
fs_representation
, and mainly consists of a directory called
.pijul
at the root of the repository, containing:
-
a directory called
pristine
, containing a Sanakirja database storing most of the repository information. -
a directory called
patches
, actually containing the patches, where each patch is a gzipped compression of the bincode encoding of thepatch::Patch
type.
At the moment, users of this library, such as the Pijul
command-line tool, may use other files in the .pijul
directory,
such as user preferences, or information about remote branches and
repositories.
Dependencies
~17–29MB
~420K SLoC