Да: это называется разветвлением (как в вилка GitHub и его советы, Вилка BitBucket и вилка GitLab).
У вас есть одно репо, за которое отвечает только интегратор (он / она присоединится к целевой ветке).
Разработчики не могут продвигаться в это репо.
У вас есть «разветвленное репо», откуда вы можете делать запросы на вытягивание в исходное репо: участники могут нажать на любую ветку, которую они хотят, а затем сделать (из этой выталкиваемой ветки) запрос на вытягивание в конечную ветвь первоначального репо.
Теоретически вы можете использовать только одно исходное репо, но для этого потребуется уровень авторизации, например gitolite, чтобы защитить ветки от push / слияния.
Это недоступно в Github (который не защищает ветки), BitBucket (который защищает ветки, но не от слияния) и GitLab (то же, что и BitBucket).
Поэтому проще работать с несколькими репозиториями апстрима: исходным и одним или несколькими форками.
А у GitHub / BitBucket / GitLab есть приятный интерфейс для пул-реквестов, связывание их с комментариями, облегчение общения и обсуждения вокруг конкретного пул-реквеста.
Форкинг + запрос на вытягивание - это не просто "способ git", это действительно самый удобный способ интегрировать множество вкладов, именно поэтому git был изобретен Линусом Торвальдсом в первую очередь: помогите ему интегрировать много патчей в день для его ядра Linux.
Подход «защищенной ветви», упомянутый Tippa Raj (и о котором я упомянул чуть выше) - это не подход, который я бы рекомендовал, поскольку он искусственно навязывает централизованный подход, при котором вам нужно все контролировать:
- ветви для защиты
- ветки, которые вы разрешаете публиковать: с одним репо у разработчиков возникнет соблазн протолкнуть все свои ветки.
GitHub не предоставляет защищенные ветки по этой причине.
(На самом деле, с сентября 2015 года он есть: см. "Как защитить" master "в github?")
BitBucket и GitLab предоставляют эту функцию.
Отдельные репозитории также могут управлять и защищать ветки (даже папки и файлы) с добавлением уровня авторизации например, гитолит.
Но когда дело доходит до облегчения совместной работы над функциональными ветками, ничто не сравнится с запросами на вытягивание.
person
VonC
schedule
14.10.2013