Не действительно.
В самом техническом смысле, да, он делает несколько вещей, но в отличие от pull
(где вы могли бы разумно сделать fetch
и merge
как два различных действий) все вещи, которые push
делает, как правило, всегда делается вместе:
- Пакуйте множество фиксаций, которое не на удаленном хосте
- Отправить запакованные фиксации на удаленный хост
- Update удаленной ссылка, чтобы указать на коммишь ты нажал на него
Выполнение # 3 на самом деле не имеет смысла, не делая также # 1 и # 2, и делать # 1 и # 2 действительно ничего не сделает, не делая также # 3.
push
никогда не сливается - вы либо перезаписываете дистанционный рефлектор, либо ваш отказ не работает.
Он эффективно выполняет 'git merge -ff-only' для обновления удаленной ссылки. –
@ Zeeker, который на самом деле не является слиянием (просто проверка 'branch --contains'). – Amber