8476b343ec
Of major notice is: - Categories - Repo flags - Architectural overhaul - Increased documentation - Improved UX - Changed config.yaml location - Increased scope of push field - Remove potentially destructive operation - Fixed mini-license typos - Fixed testing with hashmap arch - Spinner on all repoactions - Fixed commit in quick - [**breaking**] Fixed quick, fast messages - Fixed commit with editor regression - Architectural Overview - Moved charts to doc/img - Update image locations - Moved ARCHITECTURE.md to doc/ - Added some documentation - Added roadmap - Started flakification - Added nix flake #5 - [**breaking**] Add push field - [**breaking**] Add repo flags - [**breaking**] Implemented naive categories - Started work on using spinners - Added pull flag - React to exit code of git - Started adding multi instruction logic - Added fast subcommand - Version bump to v0.0.3 - Moved install scripts to ./bin - Fixed various clippy errors - Removed unused code from flake - Improved GitRepo assoc. function debug - Removed redundant line in Cargo.toml - Created on_all for config struct - Naive nested hashmap - Generic refactor - Removed atty dependency - Removed unused ./test dir - Mvp flake working <!-- generated by git-cliff --> 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.