оформить заказ / клонировать несколько веток с моего сервера git - PullRequest
0 голосов
/ 12 февраля 2019

У меня есть такой сценарий на моем git-сервере:

git branch -a

дает вывод:

  common_data
* master
  shared_data

Как проверить ветки shared_data и common_data на SAME время в отдельных локальных папках:

working_directory/common_data
working_directory/shared_data

на моей локальной рабочей станции?Я прочитал множество постов, но почему-то не понимаю, как использовать для этого work_tree.

Спасибо

GT

1 Ответ

0 голосов
/ 12 февраля 2019

Один из вариантов - использовать функцию Git worktree.Вам нужно только клонировать репозиторий один раз:

git clone myserver:myrepo.git
cd my repo

Затем вы можете использовать git worktree для извлечения веток в определенные каталоги.Например, чтобы проверить вашу ветку feature/widget в каталоге ../myrepo-widget:

git worktree add ../myrepo-widget feature/widget

Или, может быть, ваша ветка testing в каталоге ../myrepo-testing:

git worktree add ../myrepo-testing testing

В качестве альтернативы, вы можете просто клонировать исходное хранилище несколько раз:

git clone -b master myserver:myrepo.git myrepo
git clone -b feature/widget myserver:myrepo.git myrepo-widget
git clone -b testing myserver:myrepo.git myrepo-testing

Эти два механизма будут функционально идентичными в большинстве случаев.Второй вариант требует больше места для хранения, но большинство репозиториев git достаточно малы, поэтому дополнительное пространство несущественно.

...