Почему мой репо показывается за апстримом после сквоша?

Я разветвил репо, и я фиксирую и выдвигаю новые изменения, и объединенные изменения произошли из pull upstream после выполнения сквоша. Так не должно показывать

The branch is x commits ahead of upstream:master"

Вместо этого его показ

The branch is x commits ahead of upstream:master and y behind of upstream:master

Разве это не странно?
потому что я слил вышестоящий код и зафиксировал его вместе со своим новым кодом.

1 ответ

Быть впереди и позади означает расходящуюся историю.

Но если вы сделали merge --squash (результат pull, который является выборкой + слиянием), он только добавил новый коммит, он не переписал историю.
Смотрите раздел " В git, в чем разница между слиянием --squash и rebase? ".

Если вы сделали сжатие своей локальной истории (ранее выдвинутой), то история переписывается, и вы получите сообщение "вперед / назад"

Другие вопросы по тегам