• Stars
    star
    121
  • Rank 285,420 (Top 6 %)
  • Language
    Emacs Lisp
  • Created almost 12 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Use Helm to manage git projects

License GPL 3 MELPA MELPA Stable

helm-ls-git

Helm Git project manager.

directories directories

Features:

  • Display list of branches in project and provide related actions.

  • Provide git log view from branches source with related actions (diff, patches, reset, find file etc...)

  • Display the open buffers in project.

  • Display a status source showing state of project (modified files etc...).

  • Provide its own commit facilities with a mode to edit commit (commit, amend etc...)

  • Allow rebasing and provide a mode to edit rebase-todo files

  • Display stashes list and provide related actions.

  • Display a list of all files in project under git control.

  • Allow looking quickly at diff on modified files.

  • Allow switching to git status with your preferred frontend (vc-dir, magit,etc...)

  • Full integration of git-grep, allow also usage of helm-grep (you can use ack-grep instead of grep).

  • Integrate usage of gid from id-utils.

  • Full integration with helm-find-files, allow you to browse project unrelated to current-buffer.

  • In addition, all actions of type files and buffers are provided.

Installation

  • We assume that you have git installed and that OSX users have solved any $PATH issues that prevent them being able to call git from emacs.

  • Ensure you are running at least >= Emacs-24.3.

  • Install helm according to the instructions on its repo page

  • If you are using the MELPA package manager then M-x list-packages and install helm-ls-git.

  • Or, if you are using el-get then invoke M-x el-get-install and at the Install package: prompt type helm-ls-git and hit enter.

  • Otherwise, clone this repo and put helm-ls-git.el somewhere on the emacs load-path.

  • Finally, add to your .emacs.el:

Assuming you are already using helm and it is installed properly (See Install helm)

(require 'helm-ls-git)

Use M-x helm-browse-project or bind it to a key, for example:

(global-set-key (kbd "C-x C-d") 'helm-browse-project)

If you are using helm-find-files you will be able to browse any git repo unrelated to the current-buffer: M-x helm-find-files navigate to some git repo and hit C-x C-d

You can also navigate in your git projects with M-x helm-projects-history or bind it to a key:

(global-set-key (kbd "C-x r p") 'helm-projects-history)

If you want to use the helm-ls-git sources somewhere else, you can build them individually with functions helm-ls-git-build-git-status-source, helm-ls-git-build-buffers-source and helm-ls-git-build-ls-git-source.

As these sources are built with their own classes, they can be configured with defmethod helm-setup-user-source, see FAQ.

Usage

Use helm-projects-history or helm-browse-project as a starting point.

  • By calling helm-browse-project in any buffer that is a part of a git repo (or if you have navigated to a git repo from helm-find-files), you will be presented with a corresponding helm buffer containing a list of all the files currently in that same repository. In the usual helm style you can just type at the prompt in the minibuffer and see the results narrow according to the input of your search pattern.

  • When the helm-buffer is active and displaying results, the user can invoke C-] to toggle between showing filenames or full pathnames for the data that helm is listing.

NOTE: You can also use directly helm-ls-git-ls, but note that in this case your project will NOT be recorded in project history and BTW not available through M-x helm-projects-history.

Another way to record your projects is using bookmarks from helm-find-files (C-x r m).

Have fun!

More Repositories

1

helm

Emacs incremental completion and selection narrowing framework
Emacs Lisp
3,342
star
2

helm-descbinds

A helm frontend for describe-bindings.
Emacs Lisp
115
star
3

helm-system-packages

A Helm interface to the package manager of your operating system
Emacs Lisp
100
star
4

helm-mu

Helm sources for searching emails and contacts using mu
Emacs Lisp
58
star
5

helm-org

Emacs Lisp
53
star
6

helm-firefox

Display firefox bookmarks with emacs helm interface
Emacs Lisp
44
star
7

helm-exwm

Helm sources and functions for browsing and switching to EXWM buffers
Emacs Lisp
38
star
8

helm-cmd-t

Helm functions to package directories (SCM controlled or not) as sources.
Emacs Lisp
36
star
9

helm-recoll

helm interface for the recoll desktop search tool.
Emacs Lisp
35
star
10

helm-dictionary

Helm source for looking up dictionaries
Emacs Lisp
31
star
11

helm-slime

Helm for SLIME
Emacs Lisp
28
star
12

helm-describe-modes

Major and minor mode info with Helm
Emacs Lisp
27
star
13

helm-wikipedia

Emacs Lisp
19
star
14

helm-emms

Helm interface to EMMS
Emacs Lisp
18
star
15

helm-sly

Helm for SLY
Emacs Lisp
15
star
16

helm-pass

Emacs Helm interface for pass, the standard unix password manager
Emacs Lisp
14
star
17

helm-notmuch

Search emails with Notmuch and Helm
Emacs Lisp
13
star
18

helm-navi

Navigate headings and keywords provided by navi-mode and outshine using Helm
Emacs Lisp
12
star
19

helm-addressbook

Helm interface to manage contacts with https://github.com/thierryvolpiatto/addressbook-bookmark
Emacs Lisp
10
star
20

helm-ls-hg

helm extensions for listing files in hg project.
Emacs Lisp
10
star
21

helm-bbdb

A Helm interface for bbdb
Emacs Lisp
9
star
22

helm-eww

Helm interface to EWW
Emacs Lisp
8
star
23

helm-wordnut

Helm interface for WordNet
Emacs Lisp
8
star
24

helm-searcher

Helm interface to use searcher
Emacs Lisp
7
star
25

helm-fish-completion

Helm interface for Emacs fish-completion
Emacs Lisp
7
star
26

helm-selector

Convenient related-buffer selection
Emacs Lisp
6
star
27

helm-w3m

helm interface for w3m bookmarks
Emacs Lisp
6
star
28

helm-webkit

Search browse history of Emacs-Webkit ( http://www.emacswiki.org/emacs/WebKit )
Python
5
star
29

helm-elscreen

Helm interface to elscreen
Emacs Lisp
4
star
30

helm-apt

The old helm package for apt, deprecated by helm-system-packages
Emacs Lisp
4
star
31

helm-lacarte

Helm interface to lacarte.el
Emacs Lisp
4
star
32

helm-delicious

Helm extensions for delicious bookmarks
Emacs Lisp
3
star
33

helm-autoload-commands

Load library and command in runtime.
Emacs Lisp
3
star
34

helm-yaoddmuse

Emacs Lisp
2
star
35

helm-comint

Emacs Lisp
1
star
36

helm-switch-to-repl

Helm action to switch directory in REPLs
Emacs Lisp
1
star
37

helm-all-the-icons

Browse icons from all-the-icons package
Emacs Lisp
1
star