GitPedia

Commit

Commit message editor

From sonnyp·Updated June 23, 2026·View on GitHub·

Commit is an editor that helps you write better Git and Mercurial commit messages. The project is written primarily in JavaScript, distributed under the GNU General Public License v3.0 license, first published in 2019. Key topics include: desktop, flatpak, git, gjs, gnome.

Latest release: v3.2.0
April 23, 2022View Changelog →
<img style="vertical-align: middle;" src="data/icons/re.sonny.Commit.svg" width="120" height="120" align="left">

Commit

Commit is an editor that helps you write better Git and Mercurial commit messages.<img style="vertical-align: middle;" src="data/icons/re.sonny.Commit-symbolic.svg" width="16" height="16">

screenshot

https://apps.gnome.org/Commit

<a href='https://flathub.org/apps/details/re.sonny.Commit'><img alt='Download on Flathub' src='https://flathub.org/api/badge?svg&locale=en'/></a>

Installation

Setup flatpak then

sh
flatpak install re.sonny.Commit flatpak run re.sonny.Commit # Follow instructions

Tips and trick

Emojis

right-click ➞ Insert Emoji or use the shortcut Ctrl+. 🎉️
The Emoji picker works in any GNOME app 👣️

Open Commit in the center of the screen

On GNOME you can make all new windows open in the center using

sh
gsettings set org.gnome.mutter center-new-windows true

See https://gitlab.gnome.org/GNOME/mutter/-/issues/246

or set and use the move-to-center keybinding

sh
gsettings set org.gnome.desktop.wm.keybindings move-to-center "['<Super><Control><Shift>Space']"

Toolbx container

If you use git from a Toolbx container, simply install flatpak in that container and git commit will be able to lunch Commit from your host.

<!-- ## Translation If you'd like to help translating Commit into your language, please head over to [Weblate](https://hosted.weblate.org/engage/commit/). <a href="https://hosted.weblate.org/engage/commit/"> <img src="https://hosted.weblate.org/widgets/commit/-/commit/multi-auto.svg" alt="Translation status" /> </a> Thank you for your help! -->

Development

sh
cd Commit git submodule update --init --recursive ./src/local.js --readonly test/fixtures/with-body/COMMIT_EDITMSG

Make changes and hit Ctrl+Shift+Q on the Commit window to restart it.

To pass the tests you have to install a few dependencies

# Install development dependencies
sudo dnf install --assumeyes npm flatpak make desktop-file-utils gjs gtk4-devel libadwaita
npm install
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install --user --assumeyes --noninteractive flathub org.freedesktop.appstream-glib

# Run tests
make test

Flathub builds https://flathub.org/builds/#/apps/re.sonny.Commit

Maintainer

<details> <summary>i18n</summary>
sh
# To update the pot file # xgettext -f po/POTFILES -o po/re.sonny.Commit.pot --no-wrap -cTRANSLATORS --from-code=UTF-8 # sed -i "s/Project-Id-Version: PACKAGE VERSION/Project-Id-Version: re.sonny.Commit/" po/re.sonny.Commit.pot meson compile re.sonny.Commit-pot -C _build # To create a translation # msginit -i po/re.sonny.Commit.pot -o po/fr.po -l fr_FR.UTF-8 echo -n " fr" >> po/LINGUAS meson compile re.sonny.Commit-update-po -C _build # To update translations # msgmerge -U po/*.po po/re.sonny.Commit.pot meson compile re.sonny.Commit-update-po -C _build

See https://github.com/sonnyp/Commit/pull/14#issuecomment-894070878

</details> <details> <summary>Publish new version</summary>
  • meson compile re.sonny.Commit-update-po -C _build
  • Update version in meson.build
  • git tag
  • flathub
</details>

Building

<details> <summary>host</summary>
sh
cd Commit meson --prefix $PWD/install build ninja -C build install
</details> <details> <summary>Flatpak</summary>

Use GNOME Builder or

sh
cd Commit flatpak-builder --user --force-clean --repo=repo --install-deps-from=flathub flatpak re.sonny.Commit.json flatpak --user remote-add --no-gpg-verify --if-not-exists Commit repo flatpak --user install --reinstall --assumeyes Commit re.sonny.Commit
</details>

Credits

Commit is a fork of Gnomit wich was inspired by Komet.

Many thanks to its original author Aral Balkan of Small Technology Foundation.

Contributors

License

GPLv3 or later. Please see COPYING file.

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from sonnyp/Commit via the GitHub API.Last fetched: 6/24/2026