Что такое хороший рабочий процесс Git для участия в репо, работающем с запросами на выгрузку?
Я должен внести свой вклад в репо с открытым исходным кодом на GitHub.
Я сделал следующее:
- Разветвленный репо
- Клонировал репо локально
- Внесены изменения
Протестировал изменения (и это все хорошо)
- Теперь, если я фиксирую локально (в той же основной ветке), нажмите его, сделайте запрос на удаление, и на его рассмотрение уйдет 3 недели, что мне делать, если мне нужно поработать над какой-то другой ошибкой?
- Как это будет работать, если я создам отдельную ветку для каждой ошибки и внесу изменения только в нужную ветку для каждой ошибки? Итак, я бы создал ветку, исправил ошибку, зафиксировал ее, отправил запрос на получение и извлечение в свою основную ветку, чтобы одновременно работать над другими ошибками? Знает ли моя организация, какую ветку искать, когда я делаю пулл-запросы?
Пожалуйста, предложите рабочий процесс для моей ситуации.
2 ответа
Теперь, если я фиксирую локально (в той же основной ветке), нажмите его, сделайте запрос на удаление, и на его рассмотрение уйдет 3 недели, что мне делать, если мне нужно поработать над какой-то другой ошибкой?
Это легко - каждое изменение, которое вы делаете в разветвленном репозитории, должно быть ТОЛЬКО в его собственной ветке. Вы НИКОГДА не должны фиксировать какие-либо ветки, которые вы унаследовали от разветвленных репозиториев (в противном случае вам будет больно поддерживать их - обновлять с последними изменениями из вышестоящего репозитория).
Как это будет работать, если я создам отдельную ветку для каждой ошибки и внесу изменения только в нужную ветку для каждой ошибки? Итак, я бы создал ветку, исправил ошибку, зафиксировал ее, отправил запрос на получение и извлечение в свою основную ветку, чтобы одновременно работать над другими ошибками? Знает ли моя организация, какую ветку искать, когда я делаю пулл-запросы?
Вот и все. Когда вы делаете пул-запрос, вы выбираете, какие изменения / ветки добавить в запрос.
Вы должны выполнить ответвление и отправить запрос извлечения из филиала. Поскольку запрос на получение идентифицирует коммит, который вы запрашиваете для получения (и неявно, и разные предки), он будет тянуть правильную ветвь.
Лично я делаю двойную ветвь - одну, которая будет использоваться для запроса извлечения, и ту, в которой я делаю работу. Затем я разрабатываю, используя несколько коммитов (при необходимости), затем объединяю их в один коммит (или несколько, в зависимости от по рецензенту нужно) в первую ветку. Таким образом, я могу свободно развиваться, но в самом запросе pull есть только минимальное количество коммитов.