В моей установке у меня есть три операции РЕПО:Нужно ли объединять ветку в режиме репо?
- Голые Репо на удаленном сервере (
/op/git/proj.git
) - Не-голые репо на удаленном сервере (
/var/www/proj/.git
) - Не-голые репо на локальной машине (
/var/www/proj/.git
)
Голый репо является источником как для обычных репозиториев на местном, так и удаленном.
Когда я делаю фиксацию на местном, я делаю локальный push
, чтобы обнажить репо, а затем pull
на обычном удаленном репо, и я получаю свои изменения на пульте дистанционного управления.
Теперь, я хочу merge
Отрасль A
до master
Какой способ использовать? (Предположим, что master
является текущей ветви на обоих РЕПО)
Метод 1
1. local$ git merge A
2. local$ git push origin master
3. remote$ git pull origin master
Способ 2
1. local$ git merge A
2 . remote$ git merge A
Я не уверен, что второй метод - это все, что мне нужно делать или нет, другими словами, поскольку вы не можете делать такие вещи, как checkout
и , в голом репо, вам нужно что-то сделать для голого репо после merge
?
Это правильный ответ (и выше), я просто хочу добавить комментарий, что весь процесс слияния использует как индекс, так и рабочее дерево для хранения всех промежуточных результатов. В то время как у открытого репозитория есть индекс, само определение «голого репозитория» - «не имеет рабочего дерева», поэтому причина, по которой вы * не можете * объединиться в голом репозитории, заключается в том, что отсутствует критический элемент для процесса слияния. – torek