Tig - проект, реализующий terminal user interface для просмотра истории git-репозитория.
Сильно упрощает всякие git blame
-активности.
Какую задачу решает
В мире существуют различные платформы для работы с кодом.
Кто-то смотрит коммиты в GitHub, кто-то в GitLab, а кто-то в 2023 году всё ещё сидит на hosted Bitbucket версии 2008 года.
Простите за последнюю шпильку, это личная боль 🙏
Кстати, многие коммитят код прямо из IDE.
Но когда дело доходит до расследований, то всё это может быть не слишком удобно и мы обращаемся к интерфейсу git в командной строке.
У меня, например, был случай, когда надо было походить по графу из мерджей/коммитов в GitLab, который хостился в достаточно удаленной стране. И, конечно же, я сидел на слабеньком WiFi, а между нами был VPN. Удовольствие такое себе.
Вот такую боль tig
и решает:
Это инструмент для знакомства с историей репозитория, анализом изменений, поиском концов.
Как оно работает
В базовом виде, он показывает историю репозитория, по которой можно:
- Просто походить, чтобы понять, чем команда занимается
- Быстро провалиться в интересные коммиты
- Поискать что-то по привычному
/
,something
,[Enter]
Также есть blame-режим, который позволяет разобраться в изменениях отдельно взятого файла:
Никогда ещё не было так удобно понять, к кому в личку надо зайти с вопросом “почему сделано именно так?” 😅
Мне этот инструмент очень зашел и помогает в повседневной жизни.
В вашем репозитории пакет, скорее всего, так и будет называться - tig
.
А для любителей посмотреть исходники, ещё раз, ссылка:
Если конкретно tig
вам не зайдет или его покажется мало, то можно посмотреть на другие классные проекты:
- extrawurst/gitui - TUI для
git
на максималках, позволяет не только изучать, но и коммитить/пушить, написан на Rust - jesseduffield/lazygit - также TUI на максималках, во многом аналогичен предыдущему проекту, написан на Golang