Git ветви тянуть испортил - PullRequest
1 голос
/ 17 декабря 2011

Я относительно новичок в git, так что эта проблема может быть моей собственной ошибкой.Но это слишком хрупко по моему скромному мнению.Любые советы по возмещению ущерба будут оценены.

Вот мои настройки ветвей.

Machine A (Mac):
  master
  couch

Machine B (Windows):
  master

На машине B я пытаюсь получить как ветки master, так и кушетки от машины A. К сожалению, я забыл, что я не создал кушеткуветки на Машине Б пока нет.Вот что я сделал на машине B. источник установлен на машину A.

git pull origin master
git pull origin couch

К моему удивлению, git автоматически объединяет ветвь кушетки в master на машине B!Я ожидаю, что git создаст для меня ветвь на компьютере B, если она не существует.

Как мне отменить слияние?Я еще не готов объединить диванную ветку с мастером.Я собираюсь полностью удалить его на компьютере B и снова клонировать на компьютере A. Мне просто любопытно, есть ли лучшие решения.

1 Ответ

4 голосов
/ 17 декабря 2011

git pull origin couch

извлечет ветвь дивана из машины А и объединит ее с текущей веткой , которая в вашем случае была бы основной, и поэтому вы видите, что диван объединенв мастер.Все, что вам нужно было сделать, это просто git pull и затем git checkout -b couch origin/couch

Просто выполните git reflog, посмотрите, где был ваш мастер ранее, и выполните git reset --hard <sha from reflog> или что-то вроде git reset --hard HEAD@{2}

Или вы можете сделать git reset --hard ORIG_HEAD

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...