Gugit is a git clone that I wrote to familiarize myself with the inner workings of git. At the moment it only supports a fraction of commands.
- diff
- merge
- init
- commit
- show
- status
- log
- branch
- checkout
- Add three way merge and fast-forward merge.
- Consider using only one diff library, however one nicely outputs diffed lines and other allows for merging.
- Implement index (staging area).
- Cleanup error handling (use utils.check instead of doing to manually).