Я установил несколько веток удаленного отслеживания в git, но мне кажется, что я никогда не смогу объединить их в локальную ветку после того, как обновлю их с помощью «git fetch».
Например, предположим, что у меня есть удаленная ветка с именем «an-other-branch». Я установил это локально как ветку отслеживания, используя
git branch --track an-other-branch origin/an-other-branch
Все идет нормально. Но если эта ветка обновляется (обычно я перемещаю машину и фиксирую ее с этой машины), и я хочу обновить ее на исходной машине, у меня возникают проблемы с выборкой / слиянием:
git fetch origin an-other-branch
git merge origin/an-other-branch
Всякий раз, когда я это делаю, я получаю сообщение «Уже обновлено», и ничего не сливается.
Однако
git pull origin an-other-branch
всегда обновляет его так, как вы ожидаете.
Кроме того, запуск git diff
git diff origin/an-other-branch
показывает, что есть различия, поэтому я думаю, что у меня неправильный синтаксис.
Что я делаю неправильно?
РЕДАКТИРОВАТЬ [2010-04-09]: Я проверял пару раз, и я определенно не на другой ветке. Должен ли мой git fetch, за которым следует git merge (как показано выше) делать то же самое, что и git pull? Я получу рабочий процесс, показывающий результаты статуса git и т. Д.