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 →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте