Подтвердить что ты не робот

git pull: заменить локальную версию удаленной версией

Есть кое-что, чего я не понимаю с помощью команды git pull. У меня есть foobar Git-репозиторий с двумя файлами с именами f1 и f2. Сначала я клонирую этот репозиторий с помощью этой команды:

git clone [email protected]:foobar/foobar.git 

Я делаю некоторые неправильные изменения в файлах f1 и f2, добавляю их в индекс Git и затем фиксирую.

git add -A
git commit -m 'a test wrong modification'

Теперь я решаю, что эти изменения были неправильными, и я хочу заменить мои файлы на удаленную версию. Поэтому я использую git pull для этого.

git pull
Already up-to-date.

Git отвечает, что проект уже обновлен. Что не так с тем, что я делаю? Как мне перейти к замене локальной версии на удаленную?

4b9b3361

Ответ 1

git fetch origin
git reset --hard origin/master

Вот хорошее объяснение о git pull git pull

Импорт команды git fetch фиксируется из удаленного репозитория в локальное репо. Полученные коммиты хранятся как удаленные ветки вместо обычных локальных ветвей, с которыми мы работали. Это дает вам возможность просмотреть изменения, прежде чем интегрировать их в свою копию проекта.

Команда git pull <remote> извлекает указанную копию пультов текущей ветки и немедленно объединяет ее в локальную копию. Это то же самое, что и git fetch <remote>, за которым следует git merge origin/<current-branch>. Поскольку он выполняет слияние, ваши коммиты по-прежнему существуют.

После выполнения fetch вы можете reset создать рабочую копию с помощью команды reset. Hard - игнорировать любые изменения в вашей локальной копии. git reset --hard origin/master

Ответ 3

Вытягивание в основном заключается в объединении удаленного репозитория с вашим локальным. Короткий ответ - ничего плохого в настройке git, поскольку ваши последние удаленные изменения уже есть в вашем локальном репозитории. Если кто-то другой вносит изменения в удаленный репозиторий, когда притяжение становится удобным. Эти изменения вытащить и объединить в ваш локальный репозиторий после того, как вы сделаете тягу.