git fetch и git fetch origin master по-разному влияют на отслеживание ветвей

Это в основном из любопытства, поскольку я пытаюсь познакомиться с Git. Я просмотрел документацию для «git fetch», но не вижу очевидного объяснения приведенному ниже. Заранее спасибо, и извините, если это очевидно.

1 )Из центрального репозитория, скажем, GitHub, я клонирую репозиторий с именем websiteна каждую из двух машин, HostAи HostB.

2 )на HostA, я делаю изменение в файле, скажем README.txt, и фиксирую его.
На данный момент HostAкоммиты для ветвей masterи origin/master, как и ожидалось, отличаются, так как я еще не нажимал

git show master
git show origin/master

сообщить разные хэши (, так как masterимеет изменение, а origin/masterнет)

3 )Как только я нажимаю, они после этого одинаковы.


4 )Теперь перейдем к HostB, если я сделаю следующее:

git fetch
git merge FETCH_HEAD

после этого на HostB masterи origin/masterсообщают об одном и том же хеше при запросе с помощьюgit show

НО

если бы вместо этого я сделалHostB:

git fetch origin master
git merge FETCH_HEAD

в этот момент хэши все еще различаются.

git show origin
git show origin/master

отчет разные хэши

Ветка отслеживания origin/masterне обновляется, пока я не сделаю простуюgit fetch

Почему это?

23
задан Mark Fisher 27 August 2019 в 07:46
поделиться