Ani: Patch-based Version Control System
Ani is a kind of personal research project to explore how change management with patches could work as outlined in the Pijul project. The project started because the author wanted to gain a thorough understanding of how changes were represented and tracked in Pijul.
The Pijul source code is written in Rust. Ani is written in C (more specifically C11).
This collection of logs is intended as a trace of the author working to understand what a “patch” is in Pijul by re-implementing everything in C11.
- Understanding Pijul file graphs and change files 2023-10-19
Pijul represents files internally as graphs, but how does it actually work?
- Pijul notes 2023-06-02
Not so much a blog post, than a collection of knowledge tidbits for easy reference.
- A note on hashes 2022-08-23
Quick note on hashes in Pijul.
- Change files 2022-08-20
When you create a new Pijul repository, a `.pijul` folder is created with two subfolders: "change" and "pristine".
- Good merge, bad merge 2022-08-04
Some time ago, I got excited about a new VCS called Pijul whose distinctive feature is that it's based on a theoretical foundation around patches (paper).