Add a readme file

This commit is contained in:
Gonçalo Valério 2020-12-08 21:46:57 +00:00
parent df0d900e30
commit 6fba638f98
1 changed files with 51 additions and 0 deletions

51 Normal file
View File

@ -0,0 +1,51 @@
# Rgit
This repo contains an implementation of a "Git-like version control system (VCS)".
It was made by following the step by step tutorial created by `nikita` (which is fantastic btw), as a learning exercise, first to understand Git internals and also to practice a bit with the Rust programing language.
You can find the original `μgit` tutorial here:
The code on this repository was not written to be idiomatic, clear, and/or beautiful, the only concern was to follow the provided Python code as closely as possible.
**Note:** At the moment, the program is not yet finished. The last 3 steps related to the `add` (staging) feature are still missing.
**Note 2:** Do not use it for any meaningful work.
## Current commands
$ rgit --help
rgit vcs 0.1.0
Gonçalo Valério <>
A watered-down git clone
-h, --help Prints help information
-V, --version Prints version information
add Add files to the index
branch Create a new branch
cat-file outputs the original object from the provided hash
checkout Move the current content and HEAD to given commit
commit writes a named snapshot of the current tree
diff Compare the working tree with the given commit
fetch Fetch refs and objects from another repository
hash-object created an hash for an object
help Prints this message or the help of the given subcommand(s)
init creates new repository
k visualize refs and commits
log List all commits
merge Merge changes of a different commit/branch
merge-base Find the common ancestor between two commits
push Push refs and objects to another repository
read-tree writes a given tree to the working directory
reset Move the current content and HEAD to given commit with dereferencing
show Show diff from a commit
status check current branch
tag Create a tag for a given commit
write-tree write the current working directory to the database