classmgr

command module
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 24, 2021 License: Apache-2.0 Imports: 1 Imported by: 0

README

classmgr

A tool for managing programming classes on a gitlab server.

idea:

A semester needs to be created which can house multiple classes. For this classes assignments (git projects on a gitlab server) can be forked, closed and pulled.

install:

  1. install golang (e.g. sudo apt install golang)
  2. install classmgr (go get git.uibk.ac.at/c706204/classmgr)
  3. if you have added ~/go/bin to yout PATH (export PATH=$PATH:~/go/bin) you can start classmgr anywhere in your shell. Otherwise, run ~/go/bin/classmgr.
  4. configuration can be done using classmgr set config and the appropriate flags. e.g. --apitoken XXXXXXXXXX to authenticate to the gitlab server (You can generate a token in your gitlab settings). After classmgr set config was run once, one can also edit the configfile ~/.classmgr.yaml directly. All other flags are described when running classmgr --help.

workflow:

  1. Create a semester, e.g. classmgr create semester SS2019
  2. Create a class, e.g. classmgr create class 1
  3. Optional: Create more classes
  4. Import students, e.g. classmgr import students students2019.csv. Here students2019.csv should contain a list of the students, first column: gitlab username, second column: student name, third column: class nr.
  5. Create an assignment from local path, e.g. classmgr create assignment . Here . is the path of the current working dir. The numbers of the assignments are assigned automatically in ascending order starting from 00.
  6. Fork an assignment, e.g. classmgr fork assignment 00 1. Here 00 is the assignment nr to be forked and 1 is the class nr.
  7. Close assignment, e.g. classmgr close assignment 00 1. After that, students can not push anymore to their project on the gitlab server, they can only view or pull it.
  8. Pull assignment, e.g. classmgr pull assignment 00 1. The students projects of one assignment and group get cloned or pulled to the local machine.
  9. Feedback can be written directly into the code and pushed back individually using git push.
  10. Repeat steps 5-9. during the semester. Or start from 1. in the next semester.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL