Удалите коммиты из upstream / master и добавьте их в origin / master и укажите HEAD на origin / master - PullRequest
1 голос
/ 06 февраля 2020

Как вы видите, я новичок, и я все испортил.

$ git log
commit 1b33ea845ab32112dd36b835e54f136d3b8b8dbb (HEAD -> master, upstream/master, version1)
Author: Dhruv Gami <>
Date:   Wed Feb 5 14:55:00 2020 -0600

    Added Project modifications for units

    (cherry picked from commit b7b34e1b645dd43fcc78a7f2e639fa654d2f82fc)

commit 23c39347ba985969420bd7f5236efe43fdea1be7
Author: Dhruv Gami <>
Date:   Mon Feb 3 17:28:56 2020 -0600

    Changed num to label to write aux file

    (cherry picked from commit b7b34e1b645dd43fcc78a7f2e639fa654d2f82fc)

commit c5e8bf7bca100fb9f63eea6c7163072527357cd8
Author: Dhruv Gami <>
Date:   Fri Jan 31 14:22:11 2020 -0600

    Added output_date to download file to correct folder at the end of month

    (cherry picked from commit b7b34e1b645dd43fcc78a7f2e639fa654d2f82fc)

commit b7b34e1b645dd43fcc78a7f2e639fa654d2f82fc (origin/master, origin/HEAD)
Author: rip1217 <1000rip@noreply.com>
Date:   Mon Jan 27 10:44:28 2020 -0600

    Maintenance code addition

Я получил это в своем журнале, и я хотел бы отменить последние 3 изменения в апстриме и вернуться к commit b7b34e1b645dd43fcc78a7f2e639fa654d2f82fc (origin/master, origin/HEAD). По сути, начните заново с Добавление кода обслуживания в обратном хранилище. Это нормально, если нет другого способа, кроме как потерять изменения локально, чтобы вернуться к оригиналу в апстриме. Изменения вносятся в файлы python, если требуется эта информация.

Спасибо за помощь!

Ответы [ 2 ]

0 голосов
/ 07 февраля 2020

Чтобы переместить upstream / master для фиксации b7b34e1b645dd43fcc78a7f2e639fa654d2f82fc, вам нужно сделать следующее.

Сброс вашей работы к этому самому коммиту с использованием его флага ha sh.

git reset --soft b7b34

-- soft необходим для сохранения изменений ваших предыдущих коммитов.

В этот момент вы можете попробовать git log и git status команды, чтобы осмотреться: убедитесь, что сброс сделан и предыдущие изменения подготовлены.

Следующий ваш шаг - принудительно sh в upstream / master, чтобы сбросить его на коммит, на котором вы находитесь в данный момент локально.

git push --force

Однако, будьте осторожны, чтобы не разрушить чью-то работу, это было бы возможно, если бы кто-то уже подтолкнул к апстриму / мастеру после коммита b7b34.

0 голосов
/ 07 февраля 2020

Пу sh origin/master до upstream * master.

Before
A - B - C [origin/master]
         \
          D - E - F [master]
                    [upstream/master]

# git push --force-with-lease <remote> +<source branch>:<destination branch>
git push --force-with-lease upstream +origin/master:master

After
          [upstream/master]
A - B - C [origin/master]
         \
          D - E - F [master]

+origin/master:master говорит Пу sh ваши origin/master до upstream * master. См. <refspec> в git-push для получения дополнительной информации.

Поскольку ваша ветвь не является потомком upstream/master Git, обычно вы этого не позволите. Вам нужно будет форсировать это. Использование --force-with-lease.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...