Объясните пожалуйста, как правильно использовать rebase ВМЕСТО merge?
Просто для меня rebase - это rebase, а merge - это merge. merge - для слияния, а rebase - это, например, если я работаю в feature-100500 долго, и за это время develop далеко вперед ушел, тогда я подтягиваю изменения в develop и делаю из feature-100500:
git rebase develop
чтобы на origin потом никто не умер при мерже -)
Но мерж-то моей ветки в develop все равно нужен будет, не так ли?
нене, насколько я понял из статей в интернете - они именно ВМЕСТО его применяют, правда я так и не понял как именно - они вроде пытаются обьяснить, но потом сами запутываются в своих словах и рисунках))
Роми, теоретически я могу себе представить ребейз (вернее fast-forward merge) ветки develop на feature-100500 что бы сохранить линейную историю. Но практически не вижу в этом никаких плюсов кроме минусов.
Результат у merge и rebase будет одинаковый. Разница будет только в истории.
Например git rebase master, убирает ваши новые коммиты в вашей ветке, обновляет вашу ветку до состояния мастера, и сверху накатывает ваши новые коммиты.
Не надо ничего делать ВМЕСТО.
Лучше думайте на тем, ПОЧЕМУ вы работаете долго без синхронизации с базовой веткой?
А как делать синхронизацию, дополнительными коммитами слияния или пересборкой ветки на актуальном мастере, это уже дело вкуса.