Keifu: визуализация графиков коммитов в Git с TUI-интерфейсом
Keifu — это TUI-инструмент для визуализации графиков коммитов в Git. Он упрощает восприятие информации, позволяя быстро переключаться между ветками и выполнять базовые операции с коммитами в удобном цветовом формате.
Основная проблема, которую решает keifu, — это сложность чтения графиков из стандартной команды git log --graph. Здесь ты получаешь четко оформленный график с цветами, а также возможность получить подробности о коммитах и измененных файлах. Инструмент будет полезен разработчикам, работающим с несколькими ветками одновременно и предпочитающим визуальный подход к навигации в Git.
Проект написан на Rust и использует библиотеку Ratatui. Запуск происходит из терминала внутри Git-репозитория; интерфейс поддерживает работу в небольших окнах и разделенных панелях. Учти, что это не полноценный клиент Git — здесь заявлены лишь базовые функции. Подходит для тех, кто ценит простоту и визуализацию.
Проект keifu представляет собой инструмент для терминала, который визуализирует графы коммитов Git. Он показывает цветной граф коммитов, детали коммитов и сводку изменённых файлов, а также позволяет выполнять базовые операции Git, такие как переключение веток, подготовка изменений, коммит и пуш, с полной поддержкой мыши.
Зачем нужен keifu
- Читаемый граф коммитов — команда
git log --graphтрудна для восприятия, в то время как keifu отображает более чистый граф с цветами. - Быстрое переключение между ветками — инструмент упрощает работу с несколькими ветками одновременно.
- Простота — реализованы только базовые операции Git; это не полноценный клиент Git.
- Удобство для узких терминалов — хорошо работает в разделённых панелях и небольших окнах.
- Не требует специфических протоколов изображений — работает на любом терминале с поддержкой Unicode.
Как установить
Для установки keifu можно использовать несколько способов:
- С помощью crates.io:
cargo install keifu - С помощью mise:
mise use -g github:trasta298/keifu@latest - С помощью Homebrew:
brew install trasta298/tap/keifu - Сборка из исходников:
git clone https://github.com/trasta298/keifu && cd keifu && cargo install --path .
Как использовать
Для использования запусти keifu в директории Git-репозитория:
keifu
Особенности и ограничения
- Интерфейс загружает до 500 коммитов по видимым веткам.
- Слияния показываются относительно первого родителя; первый коммит сравнивается с пустым деревом.
- Количество изменённых файлов ограничено 50, бинарные файлы отображаются без линий статистики.
- При наличии незакреплённых, незавершённых или неотслеживаемых изменений вверху появляется строка «незакреплённые изменения».
- Ветки с одинаковыми коммитами отображаются с использованием счётчика, например,
[main ↔ origin, origin_2, origin_3 +1]. - Удалить можно только локальные ветки.
- Команды fetch и push требуют настроенного удалённого репозитория
origin. - Статус местных веток отображается по умолчанию, скрыть их можно, нажав
o.
Открыть на GitHub: trasta298/keifu →
RepoRadar