Как ограничить, кто может объединять код по запросу pull в битбакете?
У меня есть небольшая команда разработчиков, которые используют битбакет как наш репозиторий git.
Я хочу знать, как ограничить, кто может объединять код в запрос на pull в битбакете? И/ИЛИ заставляют по крайней мере одно утверждение до слияния. В основном я ищу, чтобы заставить просмотреть код.
На данный момент создатель pull-request (и всех остальных) может не только одобрить, но и объединить код, в котором может быть проблема для целей качества. Спасибо заранее.
Update:
Bitbucket теперь позволяет управлять разрешениями push, удалением ветки и переписыванием истории. Полные инструкции по управлению находятся здесь: https://confluence.atlassian.com/bitbucket/branch-management-385912271.html
Однако до сих пор не существует способа заставить минимальное количество утверждений.
Ответы
Ответ 1
Я хочу знать, как ограничить, кто может объединять код в запрос на pull в битбакете? И/ИЛИ заставляют по крайней мере одно утверждение до слияния. В основном я ищу, чтобы заставить просмотреть код.
Эта функция недоступна в Bitbucket прямо сейчас, но в ней есть версия Atlasian позади брандмауэра Git.
Штамп позволяет вам:
-
limit, кто может изменять ветки
-
обеспечить минимальное количество утверждений перед слиянием запросов на тягу (он может сделать аналогичную вещь для сборки Bamboo - то есть код должен скомпилироваться, прежде чем он может быть объединен)
-
reset, если изменяется запрос на перенос
Это любопытная асимметрия в атласских собственных продуктах.
Ответ 2
Ответ от attlassian:
Мэри Энтони [Atlassian Technical Writer]
Привет,
Таким образом, репозиторий может иметь ветки. Внутри этого репозитория вы не можете установить разрешения для ветки, отличной от репозитория. Вы можете установить разрешения в репозитории, которые позволят разработчикам для разветвления репозитория и выдачи запросов на него. к настройте это:
Create a group on your account and call it "developers".
Give the group read permissions.
Add all the developers to that group.
Edit the groups on the repository and add developers.
Надеюсь, что это поможет.
Mary
Вот он: https://confluence.atlassian.com/display/BITBUCKET/Work+with+pull+requests?focusedCommentId=321851850#comment-321851850
Другими словами, вы можете сделать свой dev fork проектом и выдавать запросы на тягу из своей вилки. В вашем проекте вы можете настроить проект на запрещение открытой вилки. Я предполагаю, что они разветвят проект, и он будет скрыт. Тем не менее, они смогут выдавать запрос на выгрузку и редактировать собственный репозиторий. Это выглядит довольно неудобно, но это должно сработать.
У меня нет чувства, что есть хороший способ справиться с разрешениями на github/bitbucket и так далее.
изменить
На самом деле это не решение для его применения, но все же вполне справедливое. Поскольку одобрение pull-request довольно необязательно. Это не значит, что ты напортачил, и на самом деле, если бы я был тебе. Я бы не стал пытаться принудить систему. Реальность заключается в том, что обзор кода важен. Запрос Pull упрощает просмотр наборов коммитов.
Я работал много месяцев, будучи единственным в моей команде, чтобы создавать/утверждать запросы на тягу. Команда, в которой я работала, решила, что запросы на тягу были пустой тратой времени, и я думаю, что никто из них не просмотрел код, пока я не уйду. Последнее, что я слышал, это то, что мой помощник по команде в настоящее время реорганизует мой код, потому что он понятия не имеет, как это работает.
Я пытаюсь сказать, что проверка кода не должна выполняться, и ваша команда должна рассматривать это как очень важную вещь. Каждый член вашей команды должен работать вместе, а код просматривает друг друга самостоятельно. Проводя обзор кода, они будут иметь право отказать в коде, который, по их мнению, является "уродливым" или должен быть разработан по-другому. Каждый член должен оставаться в курсе того, что другие разработчики работают, и, возможно, не так много проблем с переключением на кого-либо работу в случае болезни, отъезда или смерти!
Выполнение процесса в системе может быть хорошим с точки зрения менеджера. Но я считаю, что утверждение как необязательное тоже неплохое. И тогда работа менеджера будет проверять запрос с объединенным тягой для запроса на вытягивание с 1 или менее одобренным лицом. Проверьте, кто объединил запрос на вытягивание и кто его одобрил. Найти кого-нибудь, чтобы просмотреть код в любом случае.
С другой стороны, если запрос на растяжение висит навсегда, и никто его не рассматривает. Это задача dev попросить помощника рассмотреть ее.