Как мне сделать «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 и т. Д.