- PVSM.RU - https://www.pvsm.ru -
В нашей небольшой компании (6 backend + 4 frontend разработчика) для code review (далее CR) мы использовали Gerrit. Gerrit используется, например, для разработки Android [1]. Это инструмент, дающий очень много свободы в настройке процесса CR, но мы от него отказались. Почему? Он прекрасен для суровых backend парней, который легко делают interactive rebase, merge, resolve conflict, amend commit и т.д. Люди из frontend команды по ночам плачут в подушку от тягот рабочего процесса в Gerrit.
В попытке организовывать наш рабочий процесс так, чтобы все были счастливы, мы выбирали одно из популярных решений, которое бы подходило всем. Другими словами, решение не должно содержать критических недостатков для всех разработчиков.
Мы пришли к Bitbucket. Под катом ответы на вопросы почему Bitbucket и почему не GitHub.
Тарифные планы GitHub [2] основываются на количестве приватных репозитериев. Тарифные планы Bitbucket [3] — на количестве разработчиков в команде. Т.е. GitHub больше подходит для больших команд с малым количеством проектов, а Bitbucket — малым и средним командам с большим количеством проектов. Мы как раз являемся вторым вариантом и платим 10$ в месяц вместо 100$ в случае использования GitHub.
После Gerrit side-by-side diff является необходимым условием, Bitbucket им обладает:
Здесь есть несколько некритичных недостатков, таких как невозможность комментирования кода в модальном окне side-by-side diff (issue [4]).
Каждый pull request в нашей компании должен пройти code review (CR). Поэтому достаточно важным в нашем случае является подстраховка от случайного push в master ветку. Т.е. рабочий процесс выглядит так:
На днях Bitbucket выкатили новый резиновый интерфейс [7]. Конечно, есть недочеты, но хорошая тенденция очевидна.
Две детали, которые пришлось временно решить userscript-ами:
Автор: limonte
Источник [10]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/git/61255
Ссылки в тексте:
[1] разработки Android: https://android-review.googlesource.com/#/q/status:open
[2] Тарифные планы GitHub: https://github.com/pricing
[3] Тарифные планы Bitbucket: https://bitbucket.org/plans
[4] issue: https://bitbucket.org/site/master/issue/6357/add-commenting-in-side-by-side-diff-viewer
[5] issue: https://bitbucket.org/site/master/issue/3338/git-allow-option-to-enable-disable-force
[6] bitbucket guideline: https://bitbucket.org/javarosa/javarosa/wiki/CodeReviewGuidelines
[7] новый резиновый интерфейс: http://habrahabr.ru/post/223669/
[8] fancybox: https://greasyfork.org/scripts/1724-bitbucket-disable-fancybox
[9] подсветка пробелов/табов: https://greasyfork.org/scripts/1725-bitbucket-whitespaces
[10] Источник: http://habrahabr.ru/post/224867/
Нажмите здесь для печати.