как отменить изменения в локальной ветке git? - PullRequest
33 голосов
/ 21 октября 2011

как отменить изменения в локальной ветке git?например, локальная ветвь с версией: A-> B-> C. Сейчас я нахожусь на версии A, и в ней есть некоторые изменения, конфликтующие с последней версией C. Я хочу отменить локальные изменения и получить последнюю версию C.*

Я столкнусь с некоторой ошибкой.и есть много файлов, поэтому мне не нужно делать много раз $ git co files

Есть ли лучший способ?

Ответы [ 3 ]

67 голосов
/ 21 октября 2011

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

$ git reset --hard

, что эквивалентно

$ git reset --hard HEAD

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

$ git reset --hard HEAD^ #moves HEAD back by one commit

или, например,

$ git reset --hard HEAD~3 #moves HEAD back by 3 commits

Используйте их с осторожностью, поскольку вы не сможетеотменить эти операции.Как только вы закончите очистку вашей локальной ветки, используйте git pull, чтобы получить последний код.

31 голосов
/ 10 декабря 2011
git fetch
git reset --hard origin/master
1 голос
/ 21 октября 2011

Вы уже зафиксировали свои локальные изменения?Если не git reset --hard HEAD должно сделать трюк

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