Возможно неправильное понимание процесса. Вы должны открыть запрос на перенос, чтобы объединить ветку в master. Ветвь, которую вы объединяете из , не должна быть главной. Это должна быть ветка топи c. Помните, что для слияния требуются две ветви: исходная ветвь и ветвь назначения.
В случае запроса на вытягивание ветвь назначения является главной. Исходная ветка не должна быть главной в вашей вилке. Это должна быть ветка topi c в вашей вилке.
Правильный поток:
Вытяните последнюю версию из основной ветки исходного репозитория в главную ветку в ваша вилка
# Configure remote from where you forked your repo (do this only once)
git remote add upstream https://github.com/foo/bar.git
# Do these steps before starting on a new feature
git fetch upstream
git checkout master
git merge upstream/master
git push origin HEAD
- Создайте топи c ветку master на вашей вилке
git checkout -b feature master
- Работайте и коммитите сколько угодно раз
git commit -m "..."
- Pu sh ваша ветка topi c к вашей вилке на GitHub
git push origin -u HEAD
- Отправьте запрос на вытягивание в исходный репозиторий, чтобы объединить ветку topi c в вашей вилке с основной веткой в их репозитории
Повторите шаги 1-5 для такого количества запросов на вытягивание, которое вы сочтете необходимым.
Из истории запроса на извлечение должно быть очевидно, действительно ли ваш топи c ветка актуальна. Если их репозиторий требует, чтобы вы слили ваш master с их master для запроса на вытягивание, их процесс прерывается. Они делают это неправильно, и именно по той причине, что вы задаете вопрос на StackOverflow.