a toy git implementation by rust
usage:
tit <subcommand>
porcelain:
v0.1
- init
- add
- commit
- status
- clone
v0.2
- branch
- checkout
- merge
- rebase
- reset
- stash
- revert
v0.3
- tag
- diff
- show
- log
- push
- remote
- rm
- cherry-pick
plumbing:
- hash-object
- cat-file
- update-index
- write-tree
- read-tree
- commit-tree
todo:
- autocomplete
- man use build.rs
- ci tests (cli,completion,more)
- signals handle,exitcode,interactive with machine and human
- explore justfile as exa
reference:
https://github.com/ajeetdsouza/zoxide (clap subcommand usage)
https://github.com/BurntSushi/ripgrep (auto test)
awesome cli:
https://github.com/ClementTsang/bottom (interactive)