Заметки программиста

Git в консоли с псевдографическим интерфейсом (TUI)

Для работы с Git в консоли с псевдографическим интерфейсом (TUI) на Ubuntu существует несколько отличных приложений. 

Наиболее популярные и функциональные из них:

Lazygit

Это один из самых известных и мощных TUI-клиентов для Git, написанный на языке Go. 

  • Особенности: интуитивно понятное управление с клавиатуры, интерактивное разрешение конфликтов, удобная работа со стэшами, ветками и перебазированием.
  • Установка на Ubuntu:
  1. Установите Lazygit из официальных репозиториев Ubuntu.
    • К счастью, начиная с Ubuntu 24.10, lazygit будет доступен в стандартных репозиториях.
    • Если вы используете Ubuntu 24.04 (Noble), то, к сожалению, в стандартных репозиториях его нет.
  2. Используйте официальные инструкции по установке через скрипт.
    Это самый надёжный способ получить самую актуальную версию. LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | grep -Po '"tag_name": "v\K[^"]*') curl -Lo lazygit.tar.gz "https://github.com/jesseduffield/lazygit/releases/latest/download/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz" sudo tar xf lazygit.tar.gz -C /usr/local/bin/
    • LAZYGIT_VERSION получает номер последней версии.
    • curl -Lo загружает архив с последней версией.
    • sudo tar xf распаковывает исполняемый файл в /usr/local/bin/, делая его доступным из любого места.
  3. Установите из Snap Store
    Snap — это менеджер пакетов от Canonical, который предлагает универсальные пакеты, работающие на разных версиях Ubuntu.shsudo snap install lazygit 

После выполнения любой из этих команд lazygit будет установлен, и вы сможете его запустить. 

GitUI

Быстрый и удобный TUI-интерфейс, написанный на языке Rust. 

  • Особенности: высокая производительность даже в очень больших репозиториях, простой и понятный интерфейс, поддерживает все базовые операции Git.
  • Установка на Ubuntu (через apt): sudo apt install gitui (Если пакет недоступен, можно установить из релизных бинарников или с помощью cargo). 

Tig

Простой и легковесный консольный браузер для репозиториев Git, использующий библиотеку ncurses. 

  • Особенности: эффективный просмотр логов и изменений, удобная навигация, низкое потребление ресурсов.
  • Установка на Ubuntu: sudo apt install tig

Magit (для Emacs)

Это не отдельное приложение, а мощнейший пакет для текстового редактора Emacs, который превращает его в полноценный интерфейс для Git. 

  • Особенности: глубокая интеграция с Emacs, полностью консольный, невероятно мощный функционал, но требует изучения Emacs.
  • Установка на Ubuntu: sudo apt install emacs Далее установка Magit производится через встроенный менеджер пакетов Emacs. 

Как начать пользоваться

После установки любого из этих приложений просто перейдите в нужный каталог с Git-репозиторием и запустите команду:

  • Для Lazygitlazygit
  • Для GitUIgitui
  • Для Tigtig
  • Для Magitemacs (и затем вызвать Magit внутри редактора)

Использовать обычный git log с форматированием
Вместо графического интерфейса можно воспользоваться консольным выводом git log, настроив его для более удобного чтения.

git log --all --decorate --oneline --graph
Эту команду можно сохранить в виде алиаса, добавив в файл .gitconfig[alias]
    lg = log --all --decorate --oneline --graph
После этого достаточно будет ввести git lg.