Ответ 1
Предположим, что у вас есть оба репозитория на "настольной" машине и репозитории на "ноутбуке" , настроенном таким образом, что вы можете загружать "рабочий стол" с "ноутбука" и наоборот (например, через SSH или через git://
, то есть через git -demon, или, возможно, через простой HTTP).
Оба компьютера "рабочий стол" и "ноутбук" имеют ветвь "мастер", а также "ноутбук" имеет ветвь "развития".
Сначала установите удаленный ярлык и ветки удаленного отслеживания, используя git remote:
desktop$ git remote add laptop [email protected]:/path/to/repo
Это создало бы удаленные именные "ноутбуки" и ветки удаленного отслеживания: "ноутбук/мастер" (или, точнее, "refs/remotes/laptop/master" ), который следует за "ведущим" ветки "на ноутбуке", и "ноутбук/разработка", который следует за развитием "разработки" на "ноутбуке" .
Затем вам нужно создать локальную ветвь "разработка" на "рабочем столе", которая будет отслеживать (отслеживать) ветку удаленной отслеживания "ноутбук/разработка" (поскольку вы не можете разрабатывать на дистанционно- ветки отслеживания):
desktop$ git checkout -b development --track laptop/development
или просто (с современным git)
desktop$ git checkout --track laptop/development
Подробнее см. git-branch manpage.
Эта настройка позволяет использовать просто "git pull", когда на ветке "разработка" пока на "рабочем столе", и git будет автоматически извлекать все изменения в репозитории на "ноутбуке" в "ноутбук/мастер" и "а также попытайтесь объединить" ноутбук/развитие "в" развитие" (текущая ветвь), что обычно приводит к быстрой перемотке вперед, т.е. к простому движению "развития".
Затем вы можете создать аналогичную настройку на "ноутбуке" (хотя настройка существующей ветки "разработки" на "ноутбуке" для отслеживания "desktop/development" может потребовать редактирования файла конфигурации напрямую или через "git config" ).