Home

Awesome

saga

Saga is a version control CLI like inspired by Git. Unlike Git, it is designed to work for file formats other than text. TL;DR: imagine if you could merge your Excel files too.

If you want to use Saga to manage your creative projects (code, design, excel, etc), you can install the tool with:

pip3 install saga-vcs

If you want to add version control to a file format saga does not currently support, you can see examples of doing so here and here. Documentation coming soon!

Installation Instructions

To install the saga command line tool, run:

pip3 install saga-vcs

Currently, Saga only works on macOS and maybe Linux. Windows support coming eventually!

Using saga

Currently, the saga command line tool has a very similar interface to Git. The following commands are currently supported:

saga init
saga add 
saga commit
saga log
saga status
saga branch
saga checkout
saga merge
saga push
saga pull

Some commands don't perform exactly as Git does, so watch out!

Warning

Saga is pre-alpha software. Do not use saga to manage any files that you don't totally trust (we are sure there are security vulnerabilities hanging about).

Downloading Saga Source

If you want to check out saga's source code (or contribute <3):

git clone https://github.com/saga-vcs/saga.git;
cd saga;
python3 -m venv env;
source env/bin/activate;
pip3 install -r requirements.txt;
python3 -m saga.main {saga_cmd}

Running Tests

When inside of the python virtual enviorment:

pytest

Profiling a Test

python3 -m cProfile -m pytest tests/test_excel.py