Вам потрібно зрозуміти, що сховище Git - це не лише дерево каталогів та файлів, але також зберігає історію цих дерев - які можуть містити гілки та злиття.
Під час отримання даних із сховища ви скопіюєте всі або деякі гілки там у ваше сховище. Потім вони знаходяться у вашому сховищі як "гілки віддаленого відстеження", наприклад, гілки, названі таким remotes/origin/master
чи подібним.
Отримання нових комісій із віддаленого сховища нічого не змінить у вашій місцевій робочій копії.
У вашій робочій копії зазвичай комісія перевіряється, називається HEAD
. Ця фіксація зазвичай є підказкою одного з ваших місцевих відділень.
Я думаю, ви хочете оновити своє місцеве відділення (чи, можливо, всі локальні гілки?) До відповідної віддаленої гілки, а потім перевірити останню гілку.
Щоб уникнути конфліктів із робочою копією (яка може мати місцеві зміни), спочатку очистіть усе, що не використовується (використовуючи git clean
). Потім ви перевіряєте локальну гілку, що відповідає віддаленій гілці, до якої ви хочете оновити, і використовуєте її git reset
для переключення на вилучену віддалену гілку. ( git pull
включить усі оновлення віддаленої гілки у вашій локальній, які можуть зробити те саме, або створити комісію злиття, якщо у вас є місцеві комітети.)
(Тоді ви дійсно втратите всі локальні зміни - як в робочій копії, так і в локальних комісіях. Переконайтеся, що цього ви дійсно хочете - інакше краще скористайтеся новою гілкою, це збереже ваші місцеві зобов’язання. І використовуйте git stash
для збереження змін, які ще не здійснені .)
Редагувати:
Якщо у вас є лише одна локальна гілка і ви відстежуєте одну віддалену гілку, все, що вам потрібно зробити, - це
git pull
зсередини робочого каталогу.
Це отримає поточну версію всіх відстежених віддалених гілок та оновить поточну гілку (та робочу директорію) до поточної версії віддаленої гілки, яку вона відстежує.