Что такое хороший рабочий процесс Git для участия в репо, работающем с запросами на выгрузку?

Я должен внести свой вклад в репо с открытым исходным кодом на GitHub.

Я сделал следующее:

  1. Разветвленный репо
  2. Клонировал репо локально
  3. Внесены изменения
  4. Протестировал изменения (и это все хорошо)

    • Теперь, если я фиксирую локально (в той же основной ветке), нажмите его, сделайте запрос на удаление, и на его рассмотрение уйдет 3 недели, что мне делать, если мне нужно поработать над какой-то другой ошибкой?
    • Как это будет работать, если я создам отдельную ветку для каждой ошибки и внесу изменения только в нужную ветку для каждой ошибки? Итак, я бы создал ветку, исправил ошибку, зафиксировал ее, отправил запрос на получение и извлечение в свою основную ветку, чтобы одновременно работать над другими ошибками? Знает ли моя организация, какую ветку искать, когда я делаю пулл-запросы?

Пожалуйста, предложите рабочий процесс для моей ситуации.

2 ответа

Решение

Теперь, если я фиксирую локально (в той же основной ветке), нажмите его, сделайте запрос на удаление, и на его рассмотрение уйдет 3 недели, что мне делать, если мне нужно поработать над какой-то другой ошибкой?

Это легко - каждое изменение, которое вы делаете в разветвленном репозитории, должно быть ТОЛЬКО в его собственной ветке. Вы НИКОГДА не должны фиксировать какие-либо ветки, которые вы унаследовали от разветвленных репозиториев (в противном случае вам будет больно поддерживать их - обновлять с последними изменениями из вышестоящего репозитория).

Как это будет работать, если я создам отдельную ветку для каждой ошибки и внесу изменения только в нужную ветку для каждой ошибки? Итак, я бы создал ветку, исправил ошибку, зафиксировал ее, отправил запрос на получение и извлечение в свою основную ветку, чтобы одновременно работать над другими ошибками? Знает ли моя организация, какую ветку искать, когда я делаю пулл-запросы?

Вот и все. Когда вы делаете пул-запрос, вы выбираете, какие изменения / ветки добавить в запрос.

Вы должны выполнить ответвление и отправить запрос извлечения из филиала. Поскольку запрос на получение идентифицирует коммит, который вы запрашиваете для получения (и неявно, и разные предки), он будет тянуть правильную ветвь.

Лично я делаю двойную ветвь - одну, которая будет использоваться для запроса извлечения, и ту, в которой я делаю работу. Затем я разрабатываю, используя несколько коммитов (при необходимости), затем объединяю их в один коммит (или несколько, в зависимости от по рецензенту нужно) в первую ветку. Таким образом, я могу свободно развиваться, но в самом запросе pull есть только минимальное количество коммитов.

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