Emacs comes with ##log-edit.el## a mode for editing commit messages for various version control systems. It is used by VersionControl.

It appears that not every Git user was aware of its existence or wanted to write another mode from scratch for some other reason. So various implementations of ##git-commit[-mode].el## exist.

* Florian Ragwitz's old implementations of ##git-commit.el## can be found [https://github.com/rafl/git-commit-mode here].
* Sebastian Wiesner took that implementation, improved it by adding some fancy features, renamed it to ##git-commit-mode.el##, and bundled it with some other git-related libraries and called the resulting repository ##git-modes##. While these libraries live in the same repository, they are available as separate packages from Melpa.
* Magit used to bundle yet another implementation ##magit-log-edit.el##.
* Jonas Bernoulli merged Sebastians' ##git-commit-mode.el## and Magit's ##magit-log-edit.el##. The former name was used for the merged mode,which remains in the ##git-modes## repository (which has been moved to [https://github.com/magit/git-modes magit/git-modes]), and Jonas became its new maintainer.
* That library became the new official commit mode used by Magit and ##magit-log-edit.el## was removed from Magit.
* ##git-commit.el## was moved from the ##git-modes## repository to the ##magit## repository.
----
[[Git]] CategoryVersionControl
