Вы действительно не должны нажимать на извлеченную ветку, поскольку она эффективно вытягивает коврик из-под удаленной рабочей копии. Тогда трудно понять, изменилось ли рабочее дерево из-за того, что головка ветки сместилась, или если были также локальные изменения, которые были бы потеряны reset --hard
.
Самое простое, что нужно сделать - это нажать на другую ветку. Затем вы можете объединить это с веткой извлечения рабочей копии (или перебазировать локальную ветку на нее), когда у вас есть доступ к удаленному компьютеру и вам нужно поработать над ним.
Из дома:
git push origin HEAD:from-home
Из «работы»:
git merge from-home
Вы можете настроить вашу конфигурацию по умолчанию для определенного push-refspec.
, например
git config remote.origin.push +master:from-home
Чистое хранилище часто более естественно. Вы можете либо клонировать его из существующего репозитория, либо, что я обычно делаю, инициализировать новый репозиторий и выдвинуть нужную ветку master из существующего репозитория.
Еще лучше, если вы собираетесь использовать рабочие копии в каждом месте, это использовать этот трюк, чтобы напрямую модифицировать пульты ДУ, а не переименованную ветвь.
Итак, при отправке создайте пульт под названием «home» - вы, очевидно, не сможете извлечь его из-за конфигурации вашей сети. Это не имеет значения.
В домашних условиях скажите ему: «Когда я нажимаю на источник, он обновляет пульт источника с именем home :
git config remote.origin.push +master:home/master
Теперь все становится очень гладко. Из дома запустите git push origin
и перейдите к исходному пункту, и запустите git status
или git branch -a -v
- вы увидите что-то вроде: «хозяин отстает от дома / хозяина на 3 коммита и его можно быстро переслать». 1033 *
Другими словами, использование home для отправки изменения в доменное имя с именем удаленного источника функционально аналогично использованию origin для извлечения из дома.
Единственным недостатком здесь является то, что вам нужно будет постоянно делать новые настройки git config, когда вы создаете дополнительные ветки дома. Это накладные расходы, которые вы платите за настройку сети. К счастью, это просто и происходит только один раз для каждой ветви.