Junior — Middle
89
Explique le principe de fonctionnement de la commande rebase dans le système de contrôle de version Git et en quoi elle diffère de merge.
Réponse de l'IA
sobes.tech IA
Команда git rebase используется для переноса или «переписывания» серии коммитов на новую базу, то есть на другой коммит. Она позволяет взять изменения из одной ветки и «переиграть» их поверх другой ветки, создавая линейную историю без дополнительных merge-коммитов.
Отличия от git merge:
- git merge объединяет две ветки, создавая новый коммит слияния, который сохраняет историю обеих веток с ветвлениями.
- git rebase переносит коммиты одной ветки на вершину другой, переписывая историю и делая её линейной.
Пример:
Если у вас есть ветка feature, ответвлённая от master, и master обновился, то:
git merge masterв feature создаст merge-коммит, объединяющий изменения.git rebase masterв feature переместит ваши коммиты поверх актуального master, как будто вы начинали работу с последнего состояния master.
Rebase удобен для поддержания чистой истории, но требует осторожности при работе с публичными ветками, чтобы не переписывать общую историю.