Как мне сделать «git fetch» ​​и «git merge» из удаленной ветки отслеживания (например, «git pull»)

Я настроил несколько удаленных веток отслеживания в 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 и т. Д.

Ответы на вопрос(5)

Ваш ответ на вопрос