gitlab command line interface
Clone or download
Latest commit 02f1016 Dec 1, 2016

git + lab = gitlab

Build Status

lab is a command line tool that wrap git in order to extend it with extra features and commands that make working with GitLab easier.

$ git lab clone numa08/dejiko

# extends to:
$ git clone git://${gitlab.url}/numa08/dejiko.git


Mac OS X

Install go-lang (if not already installed)

$ brew install go

When go-lang is installed:

$ brew install libgit2
$ go get
$ go get
$ go get

Execute from within the git-gitlab repository clone

$ make build

Finally, move build/git-lab somewhere in $PATH.


OSX El Capitan users may encounter the following error

could not determine kind of name for C.GIT_CHECKOUT_SAFE_CREATE

when running

$ go get

This is because libgit v0.23.x was installed. You need 0.22.x. See for more information.


There is an aur package called git-gitlab.


Set the value of Gitlab-url and token.

$ git config --global gitlab.url

$ git config --global gitlab.token GITLAB_SECRET_TOKEN

then, set gitlab namespace and project.

$ git config gitlab.project [NAMESPACE]/[PROJECT]


git clone

$ git lab clone numa08/dejiko
> git clone git://{gitlab.url}/numa08/dejiko

$ git lab clone -p numa08/dejiko
> git clone git@{gitlab.url}/:numa08/dejiko

merge request

$ git lab merge-request -b basebranch -h headbranch
>open text editor to edit title and body
>open pull request on GitLab

$ git merge-request -b forked:branch -h origin:branch -m "Fix issue #xxx"

git merge

$ git lab merge [MERGE_REQUEST_ID]

git show

$ git lab show -- issue/10
> open