git_lab_cli-0.15.1 is not a library.
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.
Change Log
See CHANGELOG.md for a summary of fixes and features added to each release.
Current functions
init
-- initialise credentials against a remote GitLab serverproject
-- 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 assign
-- assign issueissue (open|view|browse)
-- open issue's URL in browserissue (show|info|get)
-- show details about a issueissue list
-- get list of issuesissue close
-- close issueissue reopen
-- reopen issueissue lock
-- lock discussions on issueissue unlock
-- unlock discussions on issue
mr
-- interact with merge requestsmr create
-- create merge request (either entirely via cli-passed parameters, or interactively, by prompting the user for the inputs needed)mr assign
-- assign merge requestmr close
-- close merge requestmr reopen
-- reopen merge requestmr lock
-- lock discussions on merge requestmr unlock
-- unlock discussions on merge requestmr list
-- get list of merge requestsmr (open|view|browse)
-- open merge request's URL in browsermr (show|info|get)
-- show details about a merge requestmr (checkout|co)
-- checkout merge requestmr wip
-- toggleWIP:
(orDraft:
) status of merge request
Planned functions
mr
-- interact with merge requestsmr approve
-- approve merge requestmr merge
-- merge merge request
project list
-- get list of projectspipeline
-- interact with Gitlab CI jobsgroup
-- interact with Gitlab groupsuser
-- interact with Gitlab userslabels
-- interact with Gitlab labels- probably others...
Features
Current features
- Config stored using standard
git config
machinery - 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
$EDITOR
integration oncreate
commandsmusl
binaries available here
Planned features
- support for various linux packaging tools like AUR, Deb, RPM, etc
- non-Linux support (maybe)
Installation
Cargo
To install via cargo
:
cargo install git_lab_cli
Statically linked Linux binaries
Grab a tarball for these here.
Compatibility
Supports GitLab server version 13
Contributions
Merge requests are welcome. Please raise a merge request on GitLab, not GitHub.
License: MIT