Разветвление рабочего процесса в экосистеме с открытым исходным кодом

Опубликовано: 1 Сентября, 2022

В экосистеме с открытым исходным кодом Git и Github широко используются для эффективного управления крупными проектами и сотрудничества с другими разработчиками по всему миру. Следовательно, общий рабочий процесс разветвления следует каждому разработчику, который участвует в этих проектах с открытым исходным кодом. Итак, давайте углубимся, чтобы посмотреть, как именно эта работа с разветвлением работает в экосистеме с открытым исходным кодом.

Разветвление репозитория и его клонирование в локальной среде

Просто посетите страницу Github проекта с открытым исходным кодом, в которую вы хотите внести свой вклад, а затем, выбрав конкретный репозиторий, просто нажмите кнопку «Разветвить», расположенную в правом верхнем углу. Теперь, когда вы создали свою собственную копию этого репозитория, разветвив его, давайте клонируем ваш разветвленный репозиторий на локальном компьютере, выполнив следующую команду:

command: git clone https://github.com/your_username/forked_project.git

example: git clone https://github.com/Aniruddha-Shriwant/techdocs.git

Добавление репозитория upstream в список удаленных

Upstream — это репозиторий, из которого вы разветвили локальную копию проекта. Теперь, чтобы поддерживать ваш форк в актуальном состоянии и синхронизировать его с исходным репозиторием «upstream», давайте добавим новый удаленный сервер с именем upstream:

git remote add upstream https://github.com/accordproject/techdocs.git

Вы можете проверить пульт, запустив

git remove -v

Получение с вышестоящего удаленного

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

git fetch upstream

Теперь перейдите в свою собственную главную ветку и объедините главную ветку вышестоящего репо:

git checkout master
git merge upstream/master

Теперь ваша локальная ветка master обновлена со всем, что обновляется вверх по течению.

Создание новой ветки

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

git checkout master

git checkout -b yourNewBranch  //This command will create a new branch and then checkout in it

Перебазирование вашей ветки перед созданием запроса на извлечение

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

Получите основную ветку восходящего потока, а затем объедините ее с основной веткой вашего локального репозитория:

git fetch upstream
git checkout master
git merge upstream/master

Перебазируйте свою ветку разработки с помощью основной ветки:

git checkout yourNewBranch    // yourNewBranch = your development branch that you have created earlier
git rebase master

После перебазирования вашей ветки вы готовы отправить эти изменения и создать запрос на слияние на Github.

Вывод

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