Announcing ‘mini.git’

announce
reddit
Git integration with tracking Git-related data, :Git command, and interactive Git history inspection
Author

Evgeni Chasnovski

Published

May 21, 2024

Originally posted on Reddit

Hello, Neovim users!

Let’s together celebrate the release of mini.git - new module of mini.nvim for better Git integration. It can also be installed using separate GitHub repository.


First things first. This release marks ‘mini.nvim’ reaching two important milestones: - It is already module number 40. They grow up so fast. - The project recently reached 4000 GitHub stars. Thank you for your support and trust!


Briefly about module itself. This is not intended as a one-to-one ‘tpope/vim-fugitive’ or full featured Git client replacement!

Git related functionality was one of the oldest module requests dating back to October 2022. After some thoughts, I have finally come up with a scope that I feel strikes an important balance between features and maintainability.

Its initial goal was to track Git related data in a way that can be used in statusline (can be seen used inside statusline in demo). This should pair nicely with what ‘mini.diff’ already does for diff hunks. The ‘mini.statusline’ module now uses ‘mini.git’ and ‘mini.diff’ by default for Git-diff-related sections (with fallback to ‘lewis6991/gitsigns.nvim’, so no major breaking).

After some thinking, I’ve also decided to add Fugitive-style :Git command and helpers for history navigation. Demo video showcases them both nicely.


Features:

What it doesn’t do:

To read more information, see these tags in help file:


Please, check it out and tell me what you think! You can leave your suggestions either here in comments or in dedicated beta-testing issue.

Thanks!