Если вы не можете нажать push, потому что это не ускоренное обновление, то это означает, что кто-то нажал коммит в bitbucket. Ускоренное обновление - это обновление предыдущего коммита в истории текущего коммита, т.е. Вы не делаете слияние, вы просто ускоряете время.
Pull выполнит git fetch
, а затем git merge
, что может или не может привести к фактическому слиянию, git выполнит ускоренную перемотку по умолчанию, если это вообще возможно.
Из вашего журнала выше произошло фактическое слияние, поэтому мы вернулись к исходной точке. Каким-то образом некоторые дополнительные коммиты попали в ваш репозиторий bitbucket. Возможно, вы редактировали онлайн?
Что касается вашего вопроса о требовании слияния, нет, вам не нужно , чтобы выполнить слияние. Вы должны решить вилку, хотя. Вы можете сделать это одним из двух способов. Вы можете сделать слияние или сделать то, что называется перебазированием. По сути, то, что делает git, когда вы делаете ребаз, - это повторное использование различий ваших коммитов до конца альтернативной истории. Это создает иллюзию того, что вы сделали свою новую работу прямо поверх другой новой работы. Git сохраняет даты авторов и коммитов, поэтому история может стать немного нелинейной, если вы много перебираете, однако некоторые люди предпочитают однострочную историю. Вы можете легко сделать ребаз, используя git pull --rebase