Git тянет изменения между двумя локальными репозиториями
У меня есть два клона одного и того же удаленного репозитория. Я внес некоторые изменения в один локальный репозиторий, как я могу перенести эти изменения в другой локальный репозиторий, не отправляя его в удаленный.
3 ответа
Вы можете обращаться со вторым клоном так же, как с удаленным репозиторием в другой системе. Вы можете выполнять все те же операции, например,
~/repo1 $ git remote add repo2 ~/repo2
~/repo1 $ git fetch repo2
~/repo1 $ git merge repo2/foo
Чтобы добавить в ответ ди-джеев. После добавления локального репо вы можете рассматривать его как мастер, поэтому все остальные команды git работают как обычно.
Например, если вы внесли некоторые изменения в каталог A и сохранили его в коммитах. Чтобы получить эти изменения в каталоге B (тот же компьютер), вы просто открываете терминал в этом каталоге и git pull
git pull
Это скопирует любые изменения в каталог A. Я использую эту систему, чтобы иметь среду "разработки" (каталог A) и среду производства (каталог B). Я только git тяну в директории B
Для разового вытягивания
~/repo2 $ git pull </path/to/repo1> <branch> --allow-unrelated-histories
Это будет тянуть из repo1/branch в repo2/HEAD