GithubHelp home page GithubHelp logo

lalohao / emacs-gitlab Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nlamirault/emacs-gitlab

0.0 3.0 0.0 509 KB

A Gitlab client for Emacs

License: GNU General Public License v2.0

Emacs Lisp 97.19% Makefile 2.81%

emacs-gitlab's Introduction

emacs-gitlab

License GPL 3 Coverage Status

Master :

  • MELPA Stable
  • Circle CI

Develop:

  • Melpa Status
  • Circle CI

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
    

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:

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 [email protected]

emacs-gitlab's People

Contributors

drym3r avatar marcinant avatar nlamirault avatar purcell avatar stephenwithav avatar tarsius avatar vindarel avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.