Skip to content

Tekindar666/git

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

git: Git Implementation in Rust

A Rust implementation of Git, following the Write Yourself a Git tutorial.

Quick Start

git clone https://github.com/EdwardJiazhenTan/git.git
cd git
cargo build
cargo run -- --help

Usage

# Initialize a new repository
cargo run -- init [path]

# Show repository status (if in a git repo)
cargo run

Implementation Progress

  • init - Initialize a new repository
  • add - Add files to staging area
  • cat-file - Display object contents
  • check-ignore - Check ignore rules
  • checkout - Checkout commit to working tree
  • commit - Record changes to repository
  • hash-object - Compute object hash
  • log - Show commit history
  • ls-files - List files in index
  • ls-tree - List tree contents
  • rev-parse - Parse revision identifiers
  • rm - Remove files from working tree and index
  • show-ref - List references
  • status - Show working tree status
  • tag - Create and list tags

Dependencies

  • clap - Command line argument parsing
  • anyhow - Error handling
  • configparser - Git config file parsing

About

git implementation in rust

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages