Конфликт запросов Git Pull
Я очень новичок в git и беспокоюсь, что мои коды испортят мастер-проект.
1 - Я добавил новый репо из мастер-проекта в свой аккаунт. И я изменил некоторые коды и сделал запрос мастера на прошлой неделе.
2 - Опять же, на этой неделе я сделал то же самое. Я изменил некоторые коды и сделал запрос на мастер-проект, но он конфликтует с мастер-проектом.
Владелец мастер-проекта сказал, что "в мастер-проекте кто-то изменился, и вам нужно это принять". Но я понятия не имею, как это принять.
Я пробовал эти команды
git pull // Возвращает уже обновленную версию.
git checkout master // Это уже возвращает "master".
git merge origin / master // возвращает уже обновленную версию.
git status // Это ничего не возвращает для фиксации, рабочее дерево чистое.
2 ответа
Насколько я понимаю, кажется, что вы хотели бы внести изменения из главного репозитория в свой репозиторий (или наоборот).
В любом случае, в GitHub вы можете либо создать запрос на извлечение для внесения изменений из главного форка в ваш личный клон, либо вы можете настроить удаленный входящий поток для получения изменений из локальной копии. Там вы должны объединить изменения из главного репозитория и перенести их обратно на свою ветвь на GitHub.
См. Также https://help.github.com/articles/syncing-a-fork/ в качестве ссылки.
Если вам просто нужно принять запрос на извлечение, просто перейдите в главный репозиторий (при условии, что у вас есть права на запись) и проверьте ожидающие запросы на извлечение.
Сначала проверьте конфликты, принимайте мастер-коды, затем сделайте в корне git-репо
$ git add . // Добавить все ваши изменения в дерево git
$ git status // проверка того, что вы добавляете в git
$ git commit -m "исправлять конфликты" // добавить комментарий к вашему действию отправки
$ git rebase // сравниваем коды на мастере с вашим локальным мастером, когда возникают конфликты, rebase примет ваши последние изменения и автоматически перезапишет старые коды, а затем отправит их в git head .
Я настоятельно рекомендую вам использовать rebase вместо слияния, потому что rebase умнее, чем слияния, когда возникают конфликты, самое важное из rebase - это слияние вашего git-дерева с первичным master-деревом в одно, так что вы можете продолжить разработку с одним чистым мерзкое дерево.