Helm Git project manager.
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
Integrate usage of
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.
We assume that you have
gitinstalled and that OSX users have solved any
$PATHissues that prevent them being able to call
Ensure you are running at least >= Emacs-24.3.
helmaccording to the instructions on its repo page
If you are using the MELPA package manager then
M-x list-packagesand install
Or, if you are using
M-x el-get-installand at the
Install package:prompt type
helm-ls-gitand hit enter.
Otherwise, clone this repo and put
helm-ls-git.elsomewhere on the emacs
Finally, add to your
Assuming you are already using helm and it is installed properly (See Install helm)
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
navigate to some git repo and hit
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
As these sources are built with their own classes, they can be configured with defmethod
helm-browse-project as a starting point.
helm-browse-projectin 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
helmstyle 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
Another way to record your projects is using bookmarks from
C-x r m).