Работа с несколькими ветками одновременно в одном репозитории

В идеальном мире каждый разработчик должен сосредоточиться на одной задаче или истории, не переключаясь между разными контекстами. Согласитесь, в наше время это редкость. К счастью, в арсенале git есть идеальный инструмент, позволяющий разработчикам работать с несколькими ветками одновременно, не переходя туда и обратно. Речь идет о git worktree.
Требования:
Чтобы запустить рабочее дерево, вам нужен инициализированный репозиторий, возможно, с несколькими ветвями.

Например, рассмотрим репозиторий с тремя ветками. list-users-API
, ветвь функций, которая является текущей активной ветвью, main
ветвью и user-unable-to-edit-content
, дополнительной ветвью ошибок. Возможный сценарий: ветка ошибок не прошла проверку кода и требуются дальнейшие изменения. Отсюда можно пойти несколькими путями:
- Спрячьте весь наш прогресс и переключитесь на ветку ошибок, чтобы применить необходимые изменения.
- Клонируйте репозиторий в другую папку и решите проблему, не прячась, но потратив на процесс значительное количество времени.
- Третий и последний подход заключается в использовании git worktree, сохранении нашего текущего прогресса в функциональной ветке и полном отказе от переключения.
Реализация:
Чтобы начать, используйте следующую команду для инициализации рабочего дерева :
$ git worktree add <path> [<commit-ish>]

Если вы используете git branch
now, вы увидите +
символ, предшествующий имени ветки. Чтобы начать использовать рабочее дерево, все, что нам нужно сделать, это открыть новый каталог внутри репозитория с помощью выбранной нами IDE. Теперь мы можем отправлять изменения в ветку ошибок одновременно с разработкой новой функции. Как только мы закончим с изменениями, мы можем удалить рабочее дерево, используя:
$ git worktree remove <worktree>
Git worktree — это удобный инструмент, который повышает универсальность и экономит значительное количество времени. Это позволяет работать с двумя или более ветвями без необходимости хранить или коммитить незавершенный код. Я надеюсь, что эта статья была вам полезна и повысит вашу продуктивность. Пожалуйста, оставьте любой отзыв, который вы считаете достойным поделиться в комментариях!