Большинство из нас используют системы контроля версий (в основном git) для своих проектов, но git
CLI непродуктивен. Нам часто приходится выполнять несколько команд и набирать больше символов.
Что, если я скажу вам, что есть инструменты, которые могут значительно улучшить ситуацию. Сегодня мы рассмотрим два инструмента — forgit и lazygit. Оба эти инструмента позволяют нам выполнять многие повседневные задачи git в интерактивном режиме и имеют множество сочетаний клавиш.
Forgit
Forgit — простая и легкая обертка вокруг команд git, которая использует fzf для обеспечения интерактивности команд git (и некоторые другие возможности :D).
Например, вот как выглядит ga
(эквивалент git add
) -…
ДА, это и есть diff view!
О, и это не ограничивается только стейджинговыми файлами, есть много других интерактивных команд (каждая со своим собственным псевдонимом 😀 )
Хотите изучить все предыдущие коммиты git? Запустите glo
.
Хотите просмотреть список веток и отписаться в нужной? Используйте gcb
—
И это еще не все! Полный список вы можете посмотреть в разделе возможностей в forgit README
Lazygit
С другой стороны, Lazygit — это TUI, написанный на Go, и он безумно мощный. Вот как он выглядит —
Да, это действительно много панелей. Файлы могут быть размещены/размещены простым нажатием кнопки Пробел и нажав c откроется модальное окно для написания сообщения о фиксации.
Как только вы закончите писать сообщение о фиксации, нажмите Enter и изменения будут зафиксированы 😀
О, и мы можем видеть журнал всех наших действий, а также вывод любой команды.
И для тех, кто ненавидит пользоваться мышью (хотя lazygit поддерживает мышь), есть огромное количество сочетаний клавиш.
Вы можете посмотреть на некоторые другие вещи, которые он может делать (например, разрешение конфликтов слияния и интерактивный ребасинг) в lazygit README.
Заключение
Итак, какой из них вам следует использовать? Это зависит от вашего сценария использования и от того, как вы хотите применять инструменты.
Лично я использую git CLI, forgit, lazygit и панель управления исходниками vscode в зависимости от того, что я делаю. Я всегда использую lazygit в neovim, но когда я использую vscode, я в основном использую forgit и git CLI (я редко использую панель управления исходниками).
Ссылки
- Forgit
- Lazygit