#version-control #control-system #distributed #dvcs #git #repository #status

yanked chi

A safe, understandable, & lightning-fast distributed version control system (DVCS)

0.0.1 Jan 12, 2019

#105 in #control-system

MIT license

15KB
313 lines

Chi

Crate Linux macOS
Crates.io Circle CI Travis CI

A safe, understandable, & lightning-fast distributed version control system (DVCS).

Goals

High level project goals:

  • address common criticism with Git's user interface
  • scale seamlessly to repositories that are hundreds of gigabytes in size
  • be fast

Status

Not ready for usage. Very open to collaboration if anyone else is interested in working on this project with me!

Currently the init and add commands somewhat function, and I'm working on the commit command. Afterwards I'm planning to refactor the add command, as I want to take more inspiration from the gitless conceptual model and abolish the concept of a staging area in favor of "tracking" and "untracking".

Usage

TODO

Installing

Static Binaries (Linux)

Static binary builds (currently for Linux only) are available on the GitHub releases page. Simply download the binary for your platform and run it!

Builds for other platforms are planned.

Cargo Install (any platform)

Build and install the tool via cargo...

$ cargo install chi

From Package Manager

Chi has been added to a few package managers:

  • Arch Linux AUR: TODO
  • macOS Homebrew: TODO

From Source (any platform)

Chi requires at least Rust 1.31.

Debug build with logging enabled:

$ cargo build --features logging

Release build without logging:

$ cargo build --release

To enable the log output, set the RUST_LOG env variable:

$ export RUST_LOG=chi=debug

Autocompletion

  • Bash: TODO
  • Fish: copy fish_chi to ~/.config/fish/completions/chi.fish

Development

To run tests:

$ cargo test

To run lints:

$ rustup component add clippy
$ cargo clean && cargo clippy

License

Chi is licensed under the MIT license.

Dependencies

~3MB
~42K SLoC