Git via Gerrit: локальный / мастер не синхронизирован с источником / мастером

Есть несколько вопросов против "Your branch is ahead of 'origin/master' by X commits."... Однако я не смог исправить из предоставленных мной решений.

Вот мой сценарий:

У меня есть рабочая среда Gerrit, и у меня есть привилегии, чтобы обойти обзор.

git status выходы:

# On branch master
# Your branch is ahead of 'origin/master' by 3 commits.
#
nothing to commit (working directory clean)

увидев мою ветку впереди remote Я пытаюсь подтолкнуть мою ветку.

git push gerrit:project master
Everything up-to-date

Поэтому я пытаюсь pull

git pull gerrit:project

From gerrit:project

* branch HEAD -> FETCH_HEAD

Already up-to-date.

git status снова дает тот же статус my branch ahead of 'origin/master' by X commits

когда я diff master origin/master Я не получаю никаких изменений.

Пожалуйста, дайте мне знать, если я могу помочь вам с выводами других команд..

спасибо за просмотр этого

2 ответа

Решение

Я разместил другой вопрос на этом форуме, и ответ на этот вопрос также связан с этим.

Подводя итог, вот несколько шагов, которые можно сделать:

Рассмотреть возможность использования push -f

или удалите "пульты" и обновите его так:

git remote -v бросает вывод

origin  gerrit:project (fetch)
origin  gerrit:project (push)

Из gitref добавьте сюда свои пульты и удалите источник

git remote add gerrit gerrit:projectgit remote rm origingit remote -v который должен показать следующее:

gerrit  gerrit:project (fetch)
gerrit  gerrit:project (push)

Вот ссылка на тот вопрос моего шахты... на который был дан ответ.

Пожалуйста, не стесняйтесь закрывать, так как я думаю, что это будет дубликат моего другого вопроса

git push -f, похоже, ничего не сделал для меня. Вот что сработало в моем случае.

git reset --hard HEAD~n

Замените на то, сколько когда-либо совершает ваш вперед. Иногда это занимает несколько раз.

git pull

Теперь вы должны быть в правильном месте в репо, не будучи "связанным" с другими коммитами в Gerrit.

Другие вопросы по тегам