Когда использовать вилки и тянуть запросы в GitHub

Я работаю над проектом, связанным с GitHub API, я хотел бы создать такую ​​платформу, чтобы пользователи, которые работают над репо конкретно в одной ветке в git, и как только они закончат с проблемой, они будут выполнять PULL REQUEST из Git. с другой стороны, у меня есть отдельный интерфейс, где я могу видеть все запросы на извлечение, отправленные пользователями на Git с помощью Git API.

Я сделал отдельный интерфейс для того, чтобы, когда я принимаю запрос на извлечение, я также хочу, например, вызвать что-то еще в этом действии, скажем, платеж.

Я слышал, что в этом случае они предпочитают использовать Fork, а не Branches. Что бы вы сказали, это лучший способ для меня реализовать такие вещи?

Я обычно начинал это слияние ветвей, используя ветки, но дело в том, что Git позволяет всем объединять ветки, так что это нарушило бы мои правила даже при том, что триггер / платеж не сработает при слиянии веток из Git, только через интерфейс I сделали, но все же я не хочу позволять другим пользователям объединять ветки.

Спасибо

1 ответ

Решение

Есть правило: один репозиторий не должен быть общим для двух разработчиков. Вот почему коллабораторы обычно разветвляют родительское репо и разрабатывают свои собственные форки.

Разветвление - это просто хранилище со ссылкой на другое родительское хранилище.

Соавторы могут сделать запрос на вытягивание из своего форка в исходное репо. Пул-запрос - это коммит или серия коммитов (и никогда не весь репо). Запросы на извлечение принимаются от вилок, а не от филиалов того же репо.

GitHub не позволяет всем объединять ветки. Только владелец репо и пользователи, которым были предоставлены привилегии, могут работать в репо. Вы, как владелец репо, сможете принять пул-запрос. Не просто предоставьте всем права администратора. Оставьте право управлять филиалами своего репо самому себе и, возможно, нанятому профессионалу, которому доверяют.

Если это так, я не вижу в Git Api, как я могу объединить форк с оригинальным репо, знаете ли вы, что это API

Вот как я это делаю. Извините, не разбираюсь в GitHub API.

Другие вопросы по тегам