#git #merge #fetch
#git #объединить #выборка
Вопрос:
Предполагаю, что у меня есть ветвь функций (so not master
), которую я изменил (например, внес изменения в коммит, переназначил или около того), поэтому в ней есть коммиты без быстрой перемотки вперед, ожидающие выборки / слияния.
Как я могу это сделать?
Когда я запускаю git fetch, git сообщает мне, что ему необходимо принудительно выполнить обновление. Итак, коммиты nff теперь локальны. И здесь я застрял.
Я пытался git rebase
или git merge
, но ничего не получается так, как я хочу.
Наконец, я сделал это как
git merge origin/branchname
затем у меня была фиксация слияния, которая логически ничего не делает.
И git reset --hard
возвращается к последней фиксации.
Должен быть лучший способ сделать это… но как?
Комментарии:
1. Забудьте о git merge! Когда вы выполняете «git reset —hard» в ветке interesst, после «git fetch» применяются коммиты nff!
Ответ №1:
Если у вас есть слияние, origin/branchname
которое логически ничего не делает, это означает, что в удаленной ветке не было собственных коммитов, вносящих новые изменения в вашу локальную ветку:
две ветви одинаковы, даже несмотря на то, что ваша история была переписана.
Итак, самым простым следующим шагом было бы git push --force origin branchname
заменить удаленную историю branchname
вашей локальной историей.