+++ Wednesday 18 June 2025 +++ No need for tig, magit has you covered ====================================== `tig' is a text mode tool that allows you to easily explore the changes a Git repository. It is quick, simple to use and does its job well. Today, I learned that `magit' provides the same functionality. Magit ----- Magit is a Git Porcelain inside Emacs. This is the opening of their website [1]: Magit is a complete text-based user interface to Git. It fills the glaring gap between the Git command-line interface and various GUIs, letting you perform trivial as well as elaborate version control tasks with just a couple of mnemonic key presses. EmacsWiki [2] starts the Magit page with: Magit is an interface to the version control system Git, implemented as an Emacs package. Exploration on different levels ------------------------------- Magit provides three levels of exploration: * Changes in the entire repository * Changes in a directory within the repository * Changes in a file And all with the same command :) Explore all changes or changes in a directory --------------------------------------------- To explore the entire repository or the changes within a directory, enter in Dired either the root directory of the repository, or a directory within it. Now, run: M-x magit-log-buffer-file Magit opens a new buffer with the commits, comparable to the output of `git log --pretty=short'. It shows four columns; * abbreviated hash of the commit * title line (first line of the commit message) * the committer * date ago, in the format '18 hours', '7 months', '2 years' and so on Select a commit by going to its line and hit Enter. This opens a new buffer with the details of the commit including the changes. Explore changes in a file ------------------------- To explore the changes in a file, first open the file, and then again run: M-x magit-log-buffer-file This again opens a new buffer with the commits, where you can select a commit to request the details. Have fun! [1]: https://magit.vc/ [2]: https://www.emacswiki.org/emacs/Magit Last edited: $Date: 2025/06/18 09:34:45 $