git_lab_cli
ALPHA - what is here works, but functionality is still under active development.
This is a cli tool that adds the lab command to git to enable interaction with a GitLab server.
Functionality
The tool is designed to work as a custom command to the vanilla git cli command.
Current functions
-
init-- initialise credentials aganst a remote GitLab server -
project-- interact with GitLab projectsproject create-- create projectproject attach-- associate a local repo with a projectproject (open|view|browse)-- open project's URL in browserproject (show|info|get)-- show details about a project
-
issue-- interact with issuesissue create-- create issue (either entirely via cli-passed parameters, or interactively, by prompting the user for the inputs needed)issue (open|view|browse)-- open issue's URL in browserissue (show|info|get)-- show details about a issue
Planned functions
-
project-- interact with GitLab projectsproject list-- get list of projects
-
issue-- interact with issuesissue list-- get list of issues
-
merge-request-- interact with merge requestsmerge-request create-- create merge requestmerge-request list-- get list of merge requestsmerge-request (open|view|browse)-- open merge-request's URL in browsermerge-request (show|info|get)-- show details about a merge-requestmerge-request approve-- approve merge requestmerge-request merge-- merge merge request
-
pipeline-- interact with Gitlab CI jobs -
group-- interact with Gitlab groups -
user-- interact with Gitlab users -
probably others like
labels, etc..
Features
Current features
- Config stored using standard
git configmachinery - Locally cached Gitlab metadata to improve usability when creating gitlab objects interactively
- JSON output in addition to plain text to allow for parsing with tools like
jq - Terminal-based markdown rendering
$EDITORintegration oncreatecommands
Planned features
muslandglibcbinary packages- support for various linux packaging tools like AUR, Deb, RPM, etc
- non-Linux support (maybe)
Installation
For now, this is only available via cargo while under development.
cargo install git_lab_cli
Compatibility
Supports GitLab server version 13
Contributions
Merge requests are welcome. Please raise a merge request on GitLab, not GitHub.
License: MIT