Страницы

Поиск по вопросам

вторник, 20 ноября 2018 г.

Объединить два репозитория

У меня возникла проблема, нужно объединить два репозитория, ситуация следующая:
Я создаю проект бэкенда, он находится в папке MyProject Внутри я создаю папку frontend и создаю в ней второй проект. Так получилось, что скрипт, который инициализирует данный проект, также производит инициализацию git-репозитория.
И таким образом, когда я в главной папке MyProject выполняю создание репозитория, то git не видит файлы в папке frontend, потому что это уже второй репозиторий.
Иерархия следующая:
-- MyProject ---- frontend
Не чего не клонировалось обе папки инициализировались через git init
Вопрос: как мне второй репозиторий frontend слить с первым, чтобы у меня был всего один целый репозиторий MyProject?


Ответ

короткий ответ:
вам всего лишь надо удалить каталог frontend/.git
после этого программа git, запущенная в, например, каталоге myproject, «увидит» и содержимое каталога frontend
длинный ответ с пояснениями:
если программе git при её вызове не был явно указан (параметрами или переменными окружения) путь к хранилищу («репозиторию»), первым делом она его (т.е., каталог .git) ищет. сначала в текущем каталоге, затем в вышестоящем, и так далее. а рабочим каталогом (если он тоже не был явно указан параметром или переменной окружения) будет считаться тот, в котором находится подкаталог .git (т.е. само хранилище).
многие из команд, понимаемых программой git, требуют просмотра рабочего каталога — work tree (и вложенных каталогов, разумеется) на предмет изменений (например, status, diff и т.д.).
и если при просмотре под-каталогов рабочего каталога в каком-нибудь из них будет обнаружен каталог (или файл) с именем .git, то программа git будет считать, что этот под-каталог является рабочим каталогом для какого-то другого git-хранилища, и его содержимое надо игнорировать.
именно такая ситуация и описана в вопросе.
и если содержимое хранилища в каталоге frontend/.git не нужно, то его можно удалять. тогда программа git «увидит» содержимое каталога frontend — бывшего рабочего каталога для хранилища, располагавшегося в каталоге frontend/.git

Комментариев нет:

Отправить комментарий