Задать вопрос
@developer007

Как хранить ветки GIT в разных папках?

Есть большой проект с кучей всяких компонентов - веб система
(всё находится в var/html/site1 ...)
это просто ветка master

1) есть необходимость создать ответвление - new_site2 и чтобы содержимое (все скрипты и т.д) было в другой папке var/html/site2

почему как отдельная ветка а не репозиторий?
в процессе разработки new_site2 в некоторых компонентах(общие и для master) находятся ошибки. файлы этих компонентов необходимо слить с веткой master , которая по задумке находится в var/html/site1 ...

Можно ли так сделать?

Может я что то не понимаю и это всё по другому делается
  • Вопрос задан
  • 2875 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
Lynn
@Lynn
nginx, js, css
В git с версии 2.5 есть git worktree https://git-scm.com/docs/git-worktree
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Free_ze
Пишу комментарии в комментарии, а не в ответы
Чтобы хранить разные ветки в разных папках вы можете склонировать один и тот же репозиторий в две разные папки, в каждом из получившихся локальных репозиториев переключиться на нужную ветку. Но смысла в этом нет никакого, ибо это переключаться достаточно просто и безболезненно с помощью checkout и stash.

Но обычно для таких общих фиксов для веток, которые не планируют сливать, заводят отдельную ветку от общего родителя (если это возможно), коммитят в нее фиксы и подмерживают в ветки, где эти изменения нужны.

Если так сделать нельзя (слишком давно отбранчевались от родителя и мержить будет сложно), то можно коммитить в оду из веток, но в другую не мержить ее всю напрямую, а перенести лишь новые коммиты с помощью команды cherry pick.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы