отменить изменения обратно в моем случае - PullRequest
0 голосов
/ 21 декабря 2011

Я работал в master филиале.

Я внес много изменений в свой проект, затем совершил & отправил все изменения в удаленный репозиторий:

git push origin master

Затем я создал новую ветку и перенес последний код в новую ветку (чтобы сделать ее удаленной), как показано ниже:

git branch new-branch
git checkout new-branch
git push origin new-branch

Я сейчас на new-branch. Теперь оба master & new-branch имеют один и тот же последний код локально & удаленно .

Мой вопрос:

Как мне вернуть изменить обратно в главную ветку как локально, так и удаленно. Но сохраняйте все изменения только на new-branch?

Ответы [ 3 ]

1 голос
/ 21 декабря 2011

Перейдите в основную ветку и выполните git revert HEAD и git push origin master. Это создаст новый коммит, который перевернет коммит, который вы хотите отменить.

Вы также можете сделать git reset --hard HEAD^ (в основной ветке) и git push -f origin master (-f для принудительного нажатия), но если кто-то извлечет последние изменения, которые вы выдвинули, это вызовет проблемы для них.

Эти операции не должны влиять на изменения new-branch.

0 голосов
/ 21 декабря 2011

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

git push . +master^:master
git push origin +master

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

Будьте осторожны, если кто-то уже работает над мастером. Они должны будут отменить свои изменения поверх другого коммита, если они хотят отложить свои изменения.

0 голосов
/ 21 декабря 2011

Так как вы нажали его, идеальным способом было бы git revert коммит в master и push master:

git checkout master
git revert HEAD
git push origin master

Выше будет создан новый коммит, который будет отменен (отменяет изменения) предыдущего

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