git merge –squash –no-commit
- В начале разработки создаём ветки
feature
и feature_debug
: git checkout master && git pull origin master && git checkout -b feature && git checkout -b feature_debug
- Там коммитим по чёрному, каждое изменение, отлаживаем всё по кирпичику итд, чистота коммит-месседжей, осмысленность и атомарность - на вашей совести (которую можно выкинуть).
- После каждого коммита деплоим и прогоняем тесты.
- Окончательно решаем, что всё хорошо.
- Складываем все изменения одним коммитом в
feature
: git checkout feature && git merge --squash --no-commit feature_debug
- Пишем осмысленный и красивый коммит-месседж по всем стайл-гайдам и всё такое.
- Смотрим git diff master, убеждаемся что ничего лишнего нет, всё чисто.
- Присылаем pull/merge request maintainer’у.
- ПРОФИТ!