emacs-gitlab
Master :
Develop:
Package gitlab
provides a REST client to the Gitlab API.
Installation
Installation via package.el
package.el
is the built-in package manager in Emacs.
emacs-gitlab is available on the two major community maintained repositories - MELPA STABLE, MELPA.
You can install gitlab
with the following commnad:
M-x package-install [RET] gitlab [RET]
or by adding this bit of Emacs Lisp code to your Emacs initialization file
(.emacs
or init.el
):
(unless (package-installed-p 'gitlab)
(package-install 'gitlab))
If the installation doesn't work try refreshing the package list:
M-x package-refresh-contents [RET]
Keep in mind that MELPA packages are built automatically from
the master
branch, meaning bugs might creep in there from time to
time. Never-the-less, installing from MELPA is the recommended way of
obtaining emacs-gitlab, as the master
branch is normally quite stable and
"stable" (tagged) builds are released somewhat infrequently.
With the most recent builds of Emacs, you can pin emacs-gitlab to always use MELPA Stable by adding this to your Emacs initialization:
(add-to-list 'package-pinned-packages '(gitlab . "melpa-stable") t)
Via el-get
el-get is another popular package manager for Emacs. If you're an el-get user just do M-x el-get-install [RET] gitlab [RET].
Manual
You can install emacs-gitlab manually by placing it on your load-path
and
require
ing it. Many people favour the folder ~/.emacs.d/vendor
.
(add-to-list 'load-path "~/.emacs.d/vendor/")
(require 'gitlab)
Usage
-
Setup your Gitlab configurations :
$ (setq gitlab-host "https://gitlab.com" gitlab-username "foo" gitlab-password "bar")
-
Open a session :
$ M-x gitlab-login
-
Show user's projects with helm interface:
$ M-x helm-gitlab-projects
-
Show user's issues with helm interface:
$ M-x helm-gitlab-issues
Ask the api: (where project-id can be an int or a string of the form "username/projectname".
- issues:
see gitlab-list-project-issues (project-id &optional page per-page params)
, where params can be '((state . \"opened\"))
to list the open issues
- labels:
gitlab-list-project-labels
Development
Cask
gitlab
use Cask for dependencies management.
Install it and retrieve dependencies :
$ curl -fsSkL https://raw.github.com/cask/cask/master/go | python
$ export PATH="$HOME/.cask/bin:$PATH"
$ cask
Tests
-
Setup your Gitlab informations :
$ cat $HOME/.emacs-gitlab.rc #!/bin/bash export GITLAB_HOST="https://gitlab.com" export GITLAB_USERNAME="yourusername" export GITLAB_PASSWORD="yourpassword" export GITLAB_PROJECT_ID=111222 export GITLAB_PROJECT_NAME="myproject" export GITLAB_PROJECT_DESCRIPTION="a project description" export GITLAB_ISSUE_ID=145645 export GITLAB_ISSUE_TITLE="the issue title"
-
Launch unit tests :
$ . $HOME/.emacs-gitlab.rc $ make clean test
Support / Contribute
See here
Changelog
A changelog is available here.
License
See LICENSE.
Contact
Nicolas Lamirault nicolas.lamirault@gmail.com