Ответ 1
Вариант 1
git checkout -f gh-pages
Вариант 2
git reset --hard # beware: don't make that a habit
git checkout gh-pages
Я клонировал репо git, а затем начал играть в своей главной ветке. Через некоторое время я хочу игнорировать изменения, которые я только что сделал (без их фиксации), и переключиться на другую ветку. Однако это мешает мне переключиться, потому что есть незафиксированные изменения. Как я могу игнорировать их, не лишая их? Вот что происходит:
$ git checkout gh-pages
error: Your local changes to the following files would be overwritten by checkout:
somefile.txt
Please, commit your changes or stash them before you can switch branches.
Aborting
Вариант 1
git checkout -f gh-pages
Вариант 2
git reset --hard # beware: don't make that a habit
git checkout gh-pages
Просто для полноты и для тех, кто приземлился здесь, ища: хотя OP запрашивает конкретно решение без stashing, оно стоит упомянуть, что stash действительно очень хороший вариант:
Команда сохраняет локальные изменения и возвращает рабочий каталог в соответствии с фиксацией HEAD.
Итак, вы можете просто
git stash
Это похоже на сброс в HEAD. Если быть абсолютно уверенным, что действительно эти незафиксированные изменения бесполезны, просто
git stash drop
Вы можете даже иметь несколько закладок и т.д., как указано в ссылке выше.
Я бы рекомендовал эту практику, так как она привыкла к двойному мышлению перед сбросом без значительных затрат.
Вы можете игнорировать все незафиксированные изменения.
git reset --hard HEAD
Если вы действительно уверены, что хотите отбросить незафиксированные изменения (т.е. те, которые поставлены, а также те, которые находятся в рабочем дереве), вы можете сделать:
git reset --hard
В общем, скрепление часто безопаснее
Если у вас есть неустановленный файл, попробуйте:
git checkout -- .
или
git checkout -- filename
git add -A git stash
это очистит все сделанные вами изменения (только те, которые не совершены)
Вы можете отменить изменения, сделанные вами в определенном файле:
git checkout somefile.txt
И затем плавно переходим к ветке:
git checkout gh-pages