Подтвердить что ты не робот

Git reset запрашивает больше?

Git оконная командная строка, версия 1.8.0

У меня есть 3 коммиты, и когда я печатаю

git reset --soft HEAD^

В новой строке появляется

More?

и мигающий курсор для ввода

Затем, независимо от того, что я набираю, я всегда получаю

фатальный: неоднозначный аргумент 'HEAD ': неизвестная ревизия или путь не в рабочем дереве. Используйте '-' для разделения путей от ревизий, например: 'git [...] - [...]

Все остальные команды прекрасно работают в одной папке.

4b9b3361

Ответ 1

посмотрите, работает ли git log HEAD^. Если это не так, это может быть что-то с вашей локализацией или терминалом. Кажется, он отфильтровывает символ ^. В качестве обходного пути используйте git reset --soft HEAD~1.

Ответ 2

Оболочка интерпретирует символ ^ как символ продолжения строки. Либо просто избегайте использования ^, поскольку Adam предлагает:

git reset --soft HEAD~1

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

git reset --soft "HEAD^"

Ответ 3

Элемент ^ является escape-символом в командной строке Windows. Используйте ^^ вместо ^.

git reset --soft HEAD^^

См. страницы сценариев Rob Van Der Woude для Escape Characters.