Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
После каждого rebase делать checkout на каждый измененный коммит, проверять весь написанный код на актуальность, прогонять все тесты, при необходимости вносить изменения и переписывать все коммиты. Если в это время в master добавится ещё хотя бы один коммит, повторить всё сначала.
добавится ещё хотя бы один коммит затрагивающий работу того что используется в rebased коммитах.
Цена линейной истории.
Дерево же всегда предпочтительнее
… требованиями на реформирование коммитов перед пушем, так, чтобы каждый отдельный коммит компилировался и был отдельным семантическим изменением.
git log --graph --no-merges
git log --graph --no-merges --pretty=format:'%C(red)%h%Creset%C(yellow)%d%Creset %s %C(green)(%cr)%Creset %C(blue)<%an>%Creset' --color
Но большинство других коммитов целостны и достаточны сами по себе (багфикс, мини-фича, рефакторинг) и ветка для каждого такого коммита делает историю дурно пахнущей.
сделали из нее далеко идущие обобщающие выводы о вредности или полезности отдельных компонентов гита.
2. Фича бранчи мержатся в мастер не реже чем раз в день (гибрид постоянной интеграции и бранчевания)
Поэтому при вливании feature ветки в master делают squash и удаляют feature ветку чтобы не было нерабочих коммитов 😊
Чем опасен rebase-2, или как rebase мешал баг искать