├── .gitmodules ├── Makefile └── README.org /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "anything-git-files"] 2 | path = modules/anything-git-files 3 | url = https://github.com/tarao/anything-git-files-el.git 4 | [submodule "anything-git-grep"] 5 | path = modules/anything-git-grep 6 | url = https://github.com/mechairoi/anything-git-grep.git 7 | [submodule "bug-reference-github"] 8 | path = modules/bug-reference-github 9 | url = https://github.com/arnested/bug-reference-github.git 10 | [submodule "diff-hl"] 11 | path = modules/diff-hl 12 | url = https://github.com/dgutov/diff-hl.git 13 | [submodule "dired-k"] 14 | path = modules/dired-k 15 | url = https://github.com/syohex/emacs-dired-k.git 16 | [submodule "egg"] 17 | path = modules/egg 18 | url = https://github.com/byplayer/egg.git 19 | [submodule "find-file-in-repository"] 20 | path = modules/find-file-in-repository 21 | url = https://github.com/hoffstaetter/find-file-in-repository.git 22 | [submodule "find-things-fast"] 23 | path = modules/find-things-fast 24 | url = https://github.com/eglaysher/find-things-fast.git 25 | [submodule "gerrit-download"] 26 | path = modules/gerrit-download 27 | url = https://github.com/chmouel/gerrit-download.el.git 28 | [submodule "gh"] 29 | path = modules/gh 30 | url = https://github.com/sigma/gh.el.git 31 | [submodule "gist"] 32 | path = modules/gist 33 | url = https://github.com/defunkt/gist.el.git 34 | [submodule "git"] 35 | path = modules/git 36 | url = https://github.com/rejeep/git.el.git 37 | [submodule "git-annex"] 38 | path = modules/git-annex 39 | url = https://github.com/jwiegley/git-annex-el.git 40 | [submodule "git-auto-commit-mode"] 41 | path = modules/git-auto-commit-mode 42 | url = https://github.com/ryuslash/git-auto-commit-mode.git 43 | [submodule "git-command"] 44 | path = modules/git-command 45 | url = https://github.com/10sr/git-command-el.git 46 | [submodule "git-commit-training-wheels-mode"] 47 | path = modules/git-commit-training-wheels-mode 48 | url = https://github.com/emacsattic/git-commit-training-wheels-mode.git 49 | [submodule "git-emacs"] 50 | path = modules/git-emacs 51 | url = https://github.com/tsgates/git-emacs.git 52 | [submodule "git-gutter"] 53 | path = modules/git-gutter 54 | url = https://github.com/syohex/emacs-git-gutter.git 55 | [submodule "git-gutter+"] 56 | path = modules/git-gutter+ 57 | url = https://github.com/nonsequitur/git-gutter-plus.git 58 | [submodule "git-gutter-fringe"] 59 | path = modules/git-gutter-fringe 60 | url = https://github.com/syohex/emacs-git-gutter-fringe.git 61 | [submodule "git-gutter-fringe+"] 62 | path = modules/git-gutter-fringe+ 63 | url = https://github.com/nonsequitur/git-gutter-fringe-plus.git 64 | [submodule "git-link"] 65 | path = modules/git-link 66 | url = https://github.com/sshaw/git-link.git 67 | [submodule "git-messenger"] 68 | path = modules/git-messenger 69 | url = https://github.com/syohex/emacs-git-messenger.git 70 | [submodule "git-modes"] 71 | path = modules/git-modes 72 | url = https://github.com/magit/git-modes.git 73 | [submodule "git-timemachine"] 74 | path = modules/git-timemachine 75 | url = https://gitlab.com/pidu/git-timemachine.git 76 | [submodule "github-browse-file"] 77 | path = modules/github-browse-file 78 | url = https://github.com/osener/github-browse-file.git 79 | [submodule "github-clone"] 80 | path = modules/github-clone 81 | url = https://github.com/dgtized/github-clone.el.git 82 | [submodule "github-pullrequest"] 83 | path = modules/github-pullrequest 84 | url = https://github.com/jakoblind/github-pullrequest.git 85 | [submodule "gitlab"] 86 | path = modules/gitlab 87 | url = https://github.com/nlamirault/emacs-gitlab.git 88 | [submodule "helm-backup"] 89 | path = modules/helm-backup 90 | url = https://github.com/antham/helm-backup.git 91 | [submodule "helm-git"] 92 | path = modules/helm-git 93 | url = https://github.com/maio/helm-git.git 94 | [submodule "helm-git-files"] 95 | path = modules/helm-git-files 96 | url = https://github.com/kenbeese/helm-git-files.git 97 | [submodule "helm-git-grep"] 98 | path = modules/helm-git-grep 99 | url = https://github.com/yasuyk/helm-git-grep.git 100 | [submodule "helm-github-stars"] 101 | path = modules/helm-github-stars 102 | url = https://github.com/Sliim/helm-github-stars.git 103 | [submodule "helm-ls-git"] 104 | path = modules/helm-ls-git 105 | url = https://github.com/emacs-helm/helm-ls-git.git 106 | [submodule "helm-open-github"] 107 | path = modules/helm-open-github 108 | url = https://github.com/syohex/emacs-helm-open-github.git 109 | [submodule "ibuffer-git"] 110 | path = modules/ibuffer-git 111 | url = https://github.com/jrockway/ibuffer-git.git 112 | [submodule "jist"] 113 | path = modules/jist 114 | url = https://github.com/emacs-pe/jist.el.git 115 | [submodule "magit"] 116 | path = modules/magit 117 | url = https://github.com/magit/magit.git 118 | [submodule "magit-annex"] 119 | path = modules/magit-annex 120 | url = https://github.com/kyleam/magit-annex.git 121 | [submodule "magit-commit-training-wheels"] 122 | path = modules/magit-commit-training-wheels 123 | url = https://github.com/re5et/magit-commit-training-wheels.git 124 | [submodule "magit-filenotify"] 125 | path = modules/magit-filenotify 126 | url = https://github.com/magit/magit-filenotify.git 127 | [submodule "magit-find-file"] 128 | path = modules/magit-find-file 129 | url = https://github.com/bradleywright/magit-find-file.el.git 130 | [submodule "magit-gerrit"] 131 | path = modules/magit-gerrit 132 | url = https://github.com/terranpro/magit-gerrit.git 133 | [submodule "magit-gh-pulls"] 134 | path = modules/magit-gh-pulls 135 | url = https://github.com/sigma/magit-gh-pulls.git 136 | [submodule "magit-gitflow"] 137 | path = modules/magit-gitflow 138 | url = https://github.com/jtatarik/magit-gitflow.git 139 | [submodule "magit-imerge"] 140 | path = modules/magit-imerge 141 | url = https://github.com/magit/magit-imerge.git 142 | [submodule "magit-log-edit"] 143 | path = modules/magit-log-edit 144 | url = https://github.com/magit/magit-log-edit.git 145 | [submodule "magit-push-remote"] 146 | path = modules/magit-push-remote 147 | url = https://github.com/tarsius/magit-push-remote.git 148 | [submodule "magit-rockstar"] 149 | path = modules/magit-rockstar 150 | url = https://github.com/tarsius/magit-rockstar.git 151 | [submodule "magit-stgit"] 152 | path = modules/magit-stgit 153 | url = https://github.com/magit/magit-stgit.git 154 | [submodule "magit-svn"] 155 | path = modules/magit-svn 156 | url = https://github.com/magit/magit-svn.git 157 | [submodule "magit-tbdiff"] 158 | path = modules/magit-tbdiff 159 | url = https://github.com/magit/magit-tbdiff.git 160 | [submodule "magit-topgit"] 161 | path = modules/magit-topgit 162 | url = https://github.com/magit/magit-topgit.git 163 | [submodule "magit-tramp"] 164 | path = modules/magit-tramp 165 | url = https://github.com/magit/magit-tramp.git 166 | [submodule "magithub"] 167 | path = modules/magithub 168 | url = https://github.com/vermiculus/magithub.git 169 | [submodule "mo-git-blame"] 170 | path = modules/mo-git-blame 171 | url = https://github.com/mbunkus/mo-git-blame.git 172 | [submodule "openstack-cgit-browse-file"] 173 | path = modules/openstack-cgit-browse-file 174 | url = https://github.com/chmouel/openstack-cgit-browse-file.git 175 | [submodule "org-magit"] 176 | path = modules/org-magit 177 | url = https://github.com/magit/org-magit.git 178 | [submodule "orgit"] 179 | path = modules/orgit 180 | url = https://github.com/magit/orgit.git 181 | [submodule "pcmpl-git"] 182 | path = modules/pcmpl-git 183 | url = https://github.com/leoliu/pcmpl-git-el.git 184 | [submodule "vdiff"] 185 | path = modules/vdiff 186 | url = https://github.com/justbur/emacs-vdiff.git 187 | [submodule "yagist"] 188 | path = modules/yagist 189 | url = https://github.com/mhayashi1120/yagist.el 190 | [submodule "gited"] 191 | path = modules/gited 192 | url = https://github.com/calancha/Gited.git 193 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | .PHONY: help init fetch pull 2 | 3 | help: 4 | $(info make init - initialize all modules) 5 | $(info make pull - pull all modules) 6 | @printf "\n" 7 | 8 | init: 9 | git submodule update --init 10 | git submodule foreach git checkout master 11 | 12 | pull: 13 | git submodule foreach 'git pull --ff-only || true' 14 | -------------------------------------------------------------------------------- /README.org: -------------------------------------------------------------------------------- 1 | * One repository to bind them all 2 | 3 | There is more to Git than magic. A list of Git related Emacs 4 | packages, compiled by the maintainer of Magit. The intention is to 5 | list /all/ such packages in existence. Please tell me about packages 6 | that I have missed. 7 | 8 | You can quickly get these packages by cloning this repository and its 9 | submodules, by doing this once: 10 | 11 | #+BEGIN_SRC shell 12 | git clone git@github.com:tarsius/git-elisp-overview.git 13 | cd git-elisp-overview 14 | make init 15 | #+END_SRC 16 | 17 | and then to update use 18 | 19 | #+BEGIN_SRC shell 20 | make pull 21 | #+END_SRC 22 | 23 | ** All Packages 24 | 25 | + [[https://github.com/tarao/anything-git-files-el][anything-git-files]] anything for git files 26 | + [[https://github.com/mechairoi/anything-git-grep][anything-git-grep]] anything for git grep 27 | + [[https://github.com/arnested/bug-reference-github][bug-reference-github]] Automatically set =bug-reference-url-format= in Github repositories. 28 | + [[https://github.com/dgutov/diff-hl][diff-hl]] highlighting uncommitted changes in file-visiting buffers 29 | + [[https://github.com/syohex/emacs-dired-k][dired-k]] highlight dired buffer by file size, modified time, git status 30 | - [[http://download.gna.org/dvc/][dvcs]] generic version control package supporting various distributed vcs 31 | - [[https://www.gnu.org/software/emacs/manual/ediff.html][ediff]] a comprehensive visual interface to diff & patch 32 | + [[https://github.com/byplayer/egg][egg]] Emacs Got Git - Emacs interface to Git 33 | + [[https://github.com/hoffstaetter/find-file-in-repository][find-file-in-repository]] Quickly find files in a git, mercurial or other repository 34 | + [[https://github.com/eglaysher/find-things-fast][find-things-fast]] Find things fast, leveraging the power of git 35 | + [[https://github.com/chmouel/gerrit-download.el][gerrit-download]] Show gerrit reviews in a diff buffer 36 | + [[https://github.com/sigma/gh.el][gh]] Github API client libraries 37 | + [[https://github.com/defunkt/gist.el][gist]] Emacs integration for gist.github.com 38 | + *CONFLICT* git 39 | - [[https://github.com/git/git/blob/master/contrib/emacs/git.el][git]] A user interface for git 40 | - distributed with git itself 41 | + [[https://github.com/rejeep/git.el][git]] An Elisp API for programmatically using Git 42 | + [[https://github.com/jwiegley/git-annex-el][git-annex]] Mode for easy editing of git-annex'd files 43 | + [[https://github.com/ryuslash/git-auto-commit-mode][git-auto-commit-mode]] Emacs Minor mode to automatically commit and push 44 | - [[https://github.com/git/git/blob/master/contrib/emacs/git-blame.el][git-blame]] Minor mode for incremental blame for Git 45 | - distributed with git itself 46 | + *BROKEN* [[https://github.com/emacsattic/git-commit-training-wheels-mode][git-commit-training-wheels-mode]] Advice for magit-log-edit-commit 47 | + [[https://github.com/10sr/git-command-el][git-command]] Yet another Git interface 48 | + [[https://github.com/tsgates/git-emacs][git-emacs]] yet another git emacs mode for newbies 49 | + [[https://github.com/syohex/emacs-git-gutter][git-gutter]] Port of Sublime Text plugin GitGutter 50 | + [[https://github.com/nonsequitur/git-gutter-plus][git-gutter+]] Manage Git hunks straight from the buffer 51 | + [[https://github.com/syohex/emacs-git-gutter-fringe][git-gutter-fringe]] Fringe version of git-gutter.el 52 | + [[https://github.com/nonsequitur/git-gutter-fringe-plus][git-gutter-fringe+]] Fringe version of git-gutter+.el 53 | + [[https://github.com/calancha/Gited][gited]] Operate on Git branches like dired 54 | + [[https://github.com/osener/github-browse-file][github-browse-file]] View the file you're editing on GitHub 55 | + [[https://github.com/dgtized/github-clone.el][github-clone]] Fork and clone github repos 56 | + [[https://github.com/jakoblind/github-pullrequest][github-pullrequest]] Create and fetch Github Pull requests with ease 57 | + [[https://github.com/nlamirault/emacs-gitlab][gitlab]] Emacs client for Gitlab 58 | + [[https://github.com/sshaw/git-link][git-link]] Get the GitHub/Bitbucket/Gitorious URL for a buffer location 59 | + [[https://github.com/syohex/emacs-git-messenger][git-messenger]] Pop up last commit information of current line 60 | + [[https://github.com/magit/git-modes][git-modes]] major-modes for various Git-related files 61 | - ~gitattributes-mode~ Major mode for editing .gitattributes files 62 | - ~gitconfig-mode~ Major mode for editing .gitconfig files 63 | - ~gitignore-mode~ Major mode for editing .gitignore files 64 | + [[https://github.com/pidu/git-timemachine][git-timemachine]] Walk through git revisions of a file 65 | + [[https://github.com/antham/helm-backup][helm-backup]] Backup each file change using git 66 | + [[https://github.com/maio/helm-git][helm-git]] Helm extension for Git 67 | + [[https://github.com/kenbeese/helm-git-files][helm-git-files]] helm for git files 68 | + [[https://github.com/yasuyk/helm-git-grep][helm-git-grep]] helm for git grep, an incremental git-grep(1) 69 | + [[https://github.com/Sliim/helm-github-stars][helm-github-stars]] Helm integration for your starred repositories on github 70 | + [[https://github.com/emacs-helm/helm-ls-git][helm-ls-git]] list git files 71 | + [[https://github.com/syohex/emacs-helm-open-github][helm-open-github]] Utilities of Opening Github Page 72 | + [[https://github.com/jrockway/ibuffer-git][ibuffer-git]] show git status in ibuffer column 73 | + [[https://github.com/emacs-pe/jist.el][jist]] Manage gists from Emacs 74 | + [[https://github.com/magit/magit][magit]] control Git from Emacs 75 | + ~magit~ control Git from Emacs 76 | - ~git-rebase~ Edit Git rebase files 77 | - ~magit-popup~ Define prefix-infix-suffix command combos 78 | + [[https://github.com/kyleam/magit-annex][magit-annex]] Use git annex within magit 79 | + *BROKEN* [[https://github.com/re5et/magit-commit-training-wheels][magit-commit-training-wheels]] Advice for magit-log-edit-commit 80 | + [[https://github.com/magit/magit-filenotify][magit-filenotify]] Refresh status buffer when git tree changes 81 | + [[https://github.com/bradleywright/magit-find-file.el][magit-find-file]] completing-read over all files in Git 82 | + [[https://github.com/terranpro/magit-gerrit][magit-gerrit]] Magit plugin for Gerrit Code Review 83 | + [[https://github.com/sigma/magit-gh-pulls][magit-gh-pulls]] GitHub pull requests extension for Magit 84 | + [[https://github.com/jtatarik/magit-gitflow][magit-gitflow]] gitflow extension for magit 85 | + [[https://github.com/magit/magit-imerge][magit-imerge]] Magit extension for git-imerge 86 | + *OBSOLETE* [[https://github.com/magit/magit-log-edit][magit-log-edit]] major mode for editing Git commit messages 87 | + *OBSOLETE* [[https://github.com/tarsius/magit-push-remote][magit-push-remote]] push remote support for Magit 88 | + [[https://github.com/tarsius/magit-rockstar][magit-rockstar]] commit like a rockstar 89 | + [[https://github.com/magit/magit-stgit][magit-stgit]] StGit extension for Magit 90 | + [[https://github.com/magit/magit-svn][magit-svn]] Git-Svn extension for Magit 91 | + [[https://github.com/magit/magit-tbdiff][magit-tbdiff]] Magit extension for git-tbdiff 92 | + [[https://github.com/magit/magit-topgit][magit-topgit]] TopGit extension for Magit 93 | + [[https://github.com/magit/magit-tramp][magit-tramp]] git method for TRAMP 94 | + *CONFLICT* magithub 95 | + [[https://github.com/vermiculus/magithub][magithub]] Magit interfaces for GitHub 96 | - *BROKEN* [[https://github.com/nex3/magithub][magithub]] Magit + GitHub 97 | + [[https://github.com/mbunkus/mo-git-blame][mo-git-blame]] An interactive, iterative =git blame= mode for Emacs 98 | + [[https://github.com/chmouel/openstack-cgit-browse-file][openstack-cgit-browse-file]] Browse the current file in OpenStack cgit 99 | + [[https://github.com/magit/orgit][orgit]] support for Org links to Magit buffers 100 | + *OBSOLETE* [[https://github.com/magit/org-magit][org-magit]] basic support for magit links (instead use orgit) 101 | + [[https://github.com/leoliu/pcmpl-git-el][pcmpl-git]] pcomplete for git 102 | + [[https://github.com/justbur/emacs-vdiff][vdiff]] A diff tool similar to vimdiff 103 | - [[http://www.gnu.org/software/emacs/manual/html_node/emacs/Version-Control.html#Version-Control][Version Control]] generic version control package supporting various vcs 104 | + [[https://github.com/mhayashi1120/yagist.el][yagist]] Yet Another Emacs integration for gist.github.com 105 | --------------------------------------------------------------------------------