7 unstable releases
Uses old Rust 2015
0.8.0 | Aug 26, 2018 |
---|---|
0.7.3 | Feb 7, 2018 |
0.7.2 | Dec 29, 2017 |
0.7.0 | Mar 19, 2017 |
0.5.0 | Oct 2, 2016 |
#11 in #student
21 downloads per month
11KB
227 lines
gitclass
Simple tool for managing student Git repositories.
WARNING
This project works, but is a learning project for me.
Getting Started
Installation
You can either download the compiled executable from the releases
Or build from source using Rust!
Install Rust
Follow the instructions here to install Rust, and here to install Cargo, Rust's build system.
Cargo
From here, you can simply use Cargo to get the project:
cargo install gitclass
This requires ~/.cargo
to be in your PATH
to run.
Git
Clone the repo:
git clone https://github.com/mttaggart/gitclass
Then enter the new folder. Use Cargo to build the project
cargo build --release
This will compile the project on your platform. You can then copy the result to a directory known to your PATH
. For example:
sudo cp target/release/gitclass /usr/local/bin/
Creating a classroom
gitclass init
This begins the process of creating a class. You'll be asking for a name, description, and master repository for the class. The name and description will be saved in gitclass.json
, and the master repo will be cloned within the current folder.
Adding students
gitclass add
This will prompt for name
and repo
for the student, then clone the given repo into a folder of the name provided.
Pulling Student Repos
Perform this every time you want to ensure you have the latest commits from your students.
gitclass update
This will update all repos.
This feature is a little hacky as I figure out the git2
library for Rust.
Removing students
gitclass remove $name
Getting information
gitclass log $student
This will get the commit log from the master branch. Just vanilla git log for now. For more detailed info, run git log
inside the students' folder.
Dependencies
~10MB
~249K SLoC