Что я могу сделать, чтобы разрешить "1 совершить за хозяином"?

После нажатия я видел это сообщение в удаленном репозитории:

1 зафиксировать за хозяином.

Это слияние имеет конфликты, которые необходимо разрешить прежде чем он может быть совершен.

Чтобы вручную объединить эти изменения в TA20footerLast, выполните следующие команды:

> git checkout 7c891f50c557

# Примечание. Это создаст отдельную голову!

> git объединить пульты/начало/мастер

Ответ 1

Я знаю, что это поздний ответ, но он может помочь другим.

Прежде чем начать, если вам неудобно работать с командной строкой, вы можете выполнить все следующие шаги, используя SourceTree, GitExtension, GitHub Desktop или ваш любимый инструмент. Просто следуйте инструкциям:

Чтобы решить эту проблему, у вас может быть два сценария:

1) Исправить только ветку удаленного репозитория, которая находится за коммитом

Пример: обе ветки находятся на удаленной стороне

голова === Мастер ветка

позади === Разработка ветки

Решение:

i) Клонируйте репозиторий в локальную рабочую область: это даст вам ветку Master, которая впереди с коммитом

    git clone repositoryUrl

ii) Создайте ветку с именем Develop и перейдите к ней локально

   git checkout -b DevelopBranchName // this command creates and checkout the branch

iii) Вытащить из удаленной ветки Develop

   git pull origin DevelopBranchName

iv) Объединить локальный филиал Develop с удаленным филиалом Develop.

     git merge origin develop 

v) Переместить объединенную ветвь в удаленную ветвь разработки

     git push origin develop

2) Локальная мастер-ветка находится за удаленной мастер-веткой

Это означает, что каждая локально созданная ветвь позади.

Перед этим вы должны зафиксировать или спрятать все изменения, которые вы внесли в ветку за коммитами.

Решение:

i) Оформить заказ в местном филиале Master

   git checkout master

ii) Извлечение из удаленной мастер-ветки

   git pull origin master

Теперь ваш локальный ведущий синхронизирован с удаленной веткой, но другие локальные удаленные устройства не синхронизируются с вашей локальной ветвью из-за вышеуказанной команды. Чтобы это исправить:

1) Оформите ветку, которая находится за вашей локальной веткой Master

    git checkout BranchNameBehindCommit

2) Объединение с локальной веткой Мастер

    git merge master  // Now your branch is in sync with local Master branch

Если эта ветка находится в удаленном хранилище, вы должны отправить свои изменения

     git push origin branchBehindCommit

Ответ 2

  1. Клонируйте свою вилку:

  2. Добавьте удаленный из исходного репозитория в ваш разветвленный репозиторий:

    • cd into/cloned/fork-repo
    • git remote add upstream git://github.com/ORIGINAL-DEV-USERNAME/REPO-YOU-FORKED-FROM.git
    • git fetch upstream
  3. Обновление вашего форка из исходного репо, чтобы не отставать от их изменений:

    • git pull upstream master
    • git push

Ответ 3

Если ваша ветвь отстает от мастера, тогда выполните:

git checkout master (you are switching your branch to master)
git pull 
git checkout yourBranch (switch back to your branch)
git merge master

После объединения проверьте, есть ли конфликт или нет.
Если НЕТ КОНФЛИКТА, то:

git push

Если возникает конфликт, исправьте свои файлы, а затем:

git add yourFile(s)
git commit -m 'updating my branch'
git push

Ответ 4

Возможно, вам также придется git rebase origin master.

Ответ 5

использование

git cherry-pick <commit-hash>

Так что это выберет ваш задний коммит для git локации, на которой вы находитесь.