42. Витяг змін

Цілі

  • Навчитися витягувати зміни з віддаленого репозиторію.

Виконайте:

cd ../cloned_hello
git fetch
git hist --all

Примітка: Зараз ми знаходимося в репозиторію cloned_hello

Результат:

$ git fetch
From /Users/alex/Documents/Presentations/githowto/auto/hello
   6e6c76a..2faa4ea  master     -> origin/master
$ git hist --all
* 2faa4ea 2011-03-09 | Changed README in original repo (origin/master, origin/HEAD) [Alexander Shvets]
* 6e6c76a 2011-03-09 | Updated index.html (HEAD, origin/style, master) [Alexander Shvets]
* 1436f13 2011-03-09 | Hello uses style.css [Alexander Shvets]
* 59da9a7 2011-03-09 | Added css stylesheet [Alexander Shvets]
* 6c0f848 2011-03-09 | Added README [Alexander Shvets]
* 8029c07 2011-03-09 | Added index.html. [Alexander Shvets]
* 567948a 2011-03-09 | Moved hello.html to lib [Alexander Shvets]
* 6a78635 2011-03-09 | Add an author/email comment [Alexander Shvets]
* fa3c141 2011-03-09 | Added HTML header (v1) [Alexander Shvets]
* 8c32287 2011-03-09 | Added standard HTML page tags (v1-beta) [Alexander Shvets]
* 43628f7 2011-03-09 | Added h1 tag [Alexander Shvets]
* 911e8c9 2011-03-09 | First Commit [Alexander Shvets]

На даний момент в репозиторію є всі коміти з оригінального репозиторію, але вони не інтегровані в локальні гілки клонованого репозиторію.

В історії вище знайдіть коміт «Changed README in original repo». Зверніть увагу, що коміт містить у собі коміти «origin/master» и «origin/HEAD».

Тепер давайте подивимося на коміт «Updated index.html». Ви побачите, що локальна гілка master вказує на цей коміт, а не на новий коміт, котрий ми щойно витягли.

Висновком є ​​те, що команда «git fetch» ​​буде витягувати нові коміти з віддаленого репозиторію, але не буде зливати їх з вашими напрацюваннями в локальних гілках.

01 Перевірте README

Ми можемо продемонструвати, що клонований файл README не змінився.

Виконайте:

cat README

Результат:

$ cat README
This is the Hello World example from the git tutorial.

Як бачите, ніяких змін.