В некоторых репозиториях, с которыми я работаю, я обнаружил, что поддерево git не ведет себя должным образом при совместном использовании репозиториев.
Вот сценарий:
- Я владею основным репозиторием X и отправляю его в источник.
- Мой коллега извлекает репозиторий X из источника, добавляет поддерево, указывающее на другой репозиторий Y, делает коммит и отправляет X обратно в источник.
- Я нажимаю X и вижу изменения, внесенные моим коллегой. Однако в моем локальном репозитории папка, содержащая поддерево Y, — это просто еще один файл. Я не могу извлечь изменения из репо Y даже после добавления репо Y в качестве удаленного. Поддерево Git всегда говорит, что папка уже существует, когда я делаю
git subtree add
, и говорит, что не может найти фиксацию, когда я делаюgit subtree merge
.
Кто-нибудь знает лучший способ справиться с этой ситуацией? В идеале я хотел бы также иметь возможность извлекать изменения из репо Y, хотя я не являюсь пользователем, добавляющим репо Y в качестве поддерева репо X. Возможно ли это? Если нет, то как лучше всего поделиться репозиториями с поддеревьями?
git subtree merge
. - person Maic López Sáenz   schedule 13.03.2014