Чтобы посмотреть, прошли ли проверки по своему пул-реквесту, приходится идти в браузер, а чтобы поменять местами два коммита перед отправкой — вызывать интерактивный rebase и править список в редакторе.
lazygit — терминальный интерфейс к git: панели веток, коммитов и файлов, добавление в индекс по отдельным строкам, интерактивное перебазирование. Версия 0.64.0 вышла 4 августа.
Что внутри:
🔘 модель многопоточности переписана целиком: обновления данных и экрана выполняются в потоке интерфейса вместо россыпи мьютексов, известных гонок не осталось, а набор интеграционных тестов гоняется в CI с флагом -race;
🔘 в списке ветвей и в главной панели показывается сводный статус проверок GitHub для соответствующего пул-реквеста;
🔘 мышью теперь можно менять порядок коммитов и строк плана перебазирования перетаскиванием, выделять диапазон в списках, а при выделении в панели индекса экран сам прокручивается;
🔘 внешней команде сравнения доступна подстановка {{diffContext}}, а настройка custom pager переименована в diff renderer, старое имя в конфиге придётся поправить;
🔘 исправлено залипание индикатора в конце отправки и загрузки, зависание при ctrl+z и возврате процесса, а также поломанное отображение боковых панелей, когда ветки или коммиты открыты не на первой вкладке;
🔘 на Windows починили падение при переходе в полноэкранный режим с внешним просмотрщиком, осиротевшие процессы при быстром перемещении по коммитам и остающиеся файлы index.lock.
Автор честно предупреждает: изменений в этом релизе непривычно много, поэтому вероятность регрессий выше обычного, и просит сообщать обо всём найденном.
Пригодится тем, кто живёт в терминале, разбирает историю перед отправкой и не хочет держать открытой вкладку с проверками.
81 тысяча звёзд на GitHub, ближайшие терминальные аналоги gitui и tig держатся на 22 и 13 тысячах.
Язык: Go. Лицензия: MIT.
@prog_tools
Post #2865
1.34K
