This is a result of me letting one of my intrusive thought win after one of my colleague @ervanhohoho suggested it most likely as a joke.
What if you make your own Git?
And here we are 2months later. I don't even remember the context of the conversation anymore but I am glad I did this because this taught
me a lot about designing software, rust and DSA. And yes this is also an excuse to use Rust.
- It is slower than Git.
- No single file staging support.
- No Merging.
- Questionable branch switching logic that may or may not broke someday and accidentally delete most of your uncommitted work.
gup init
initialize a Gup repository on current workdir
gup add .
stage all files in current dir
gup commit "message goes here"
commit all staged files
gup branch new_branch_name
create a new branch based on the current active branch
gup checkout branch_name
change active branch
Gup also support ignore files by creating a file called .gupignore
gup init
gup add .
gup commit "this work"
Don't