Ответ 1
Мы всегда выполняем обзор кода до того, как код будет передан в туловище. Я согласен с комментарием Нейла Баттерворта о том, что частые коммиты - это то, что нужно поощрять, и что требующий проверки кода перед каждым фиксацией запрещает это.
Точные условия, которые будут работать, зависят от среды и проекта. Наша среда такова:
- Сохраняйте нашу основную линию развития в багажнике
- Имейте правило, что соединительная линия должна всегда работать (т.е. не передавать вещи в туловище, которые не компилируют или не проходят тесты и т.д.).
- Филиал для каждого случая (функция, исправление ошибок и т.д.)
- Выполните проверку кода, когда работа в данной ветке завершена.
- Объедините ветку вниз в багажник, когда он пройдет обзор
- Когда релиз сделан, мы помещаем ревизию и ветвь выпуска золота. Все новые исправления ошибок для определенного выпуска происходят в этой ветке. Разблокировать ветки никогда не сливаются обратно в багажник.
В нашей среде это позволяет разработчикам часто выполнять (в пределах своей собственной ветки), а для проверки кода выполнять каждую единицу работы (но не каждую фиксацию).
Что касается того, как проводить обзор кода, это гораздо более амбициозный вопрос. Тот, который заслуживает собственного вопроса на SO (и на самом деле уже несколько):
https://stackoverflow.com/questions/89163/how-to-conduct-a-successful-code-review Лучшее программное обеспечение для обзора кодов для пира fooobar.com/questions/tagged/...