Почему мой репо показывается за апстримом после сквоша?
Я разветвил репо, и я фиксирую и выдвигаю новые изменения, и объединенные изменения произошли из 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? ".
Если вы сделали сжатие своей локальной истории (ранее выдвинутой), то история переписывается, и вы получите сообщение "вперед / назад"