3f05ae827a
This follows up on previous commits message, but with a completely different implementation that is a lot tighter. It doesn't handle commit messages, but quick is now implemented. This has also shown that the previous fall-through behaviour of quick wasn't a bug but a feature, as it would try to pull, not fail if it couldn't. This means it would be a good idea to implement an alternative version of quick that keeps this old behaviour, or probably more likely, creating a new command that does what the quick in this commit does, and then finding a way to recreate the old behaviour of quick. This is dev branch thou, so I don't have to do that before pushing :D Signed-off-by: Christina Sørensen <christina@cafkafk.com> |
||
---|---|---|
bin | ||
doc | ||
src | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
CODE_Of_CONDUCT.md | ||
flake.lock | ||
flake.nix | ||
LICENSE | ||
README.org |
gg - git gut
A Rust GitOps/symlinkfarm orchestrator inspired by GNU Stow. Useful for dealing with "dotfiles", and with git support as a first class feature. Configuration is done throug a single yaml file, giving it a paradigm that should bring joy to those that use declarative operating systems and package managers.
Although this isn't really a case where it matters that much for performance, being written in rust instead of e.g. janky scripting languages does also mean it is snappy and reliable, and the extensive testing helps ensure regressions aren't introduced.
That said, we're in 0.0.Z, here be dragons for now.
Installation
$ git clone https://github.com/cafkafk/git
$ ./install
Configuration
If you want a template, you can copy the file from src/test/config.yaml:
$ mkdir -p ~/.config/gg/
$ cp src/test/config.yaml ~/.config/gg/config.yaml
You should seriously change this file before running any commands.
The configuration format will likely break regularly in versions 0.Y.Z.