2009-09-04 2 views
2

В режиме emacs-git для emacs есть ли способ сделать checkout -f или его эквивалент?Как сделать «git checkout -f» из emacs-git?

Я только недавно начал использовать emacs-git. Мне это до сих пор понравилось, пока я не попытался переключиться на другую ветку и получил сообщение о том, что «файл необработанного рабочего дерева будет перезаписан», и проверка отменена.

Раньше при использовании git из командной строки я всегда делал git checkout -f <branch> для переключения ветвей, но я не могу найти эквивалент переключателя -f в emacs-git.

Любые идеи?

+0

Не могли бы вы указать, какой пакет git вы используете точно? Есть их группа, http://www.emacswiki.org/emacs/Git –

ответ

0

Команда git checkout -f является гораздо более опасной командой, чем не использовать флаг -f, это действительно то, что вы хотите сделать? Вы рискуете случайно отбросить изменения, которые еще не были проверены нигде.

Ошибка, которую вы получили, связана с файлом, который не отслеживается в вашей текущей ветке (но файл существует на диске), но is отслеживается в ветке, в которую вы меняете. Git хочет перезаписать необработанный файл с помощью новой ветки. Что, если в этом файле было что-то важное? Сообщение об ошибке указывает, что сначала вы должны сделать что-то с этим файлом, прежде чем переключать ветви.

+0

Это то, что я хочу сделать. Файл (ы), о котором идет речь, как вы сказали, игнорируются в текущей ветке (сгенерированный материал). Я честно не знаю, игнорируются они или нет в тех филиалах, к которым я пытаюсь перейти. На данный момент я уже использовал git из командной строки для проверки того, что мне нужно, но мне любопытно использовать их в будущем, если есть способ передать такие аргументы, как -f для git-команд, используя emacs-git. –

+0

Хорошо, справедливо. Я никогда не использовал emacs-git, так что извините, что я больше не помогал. –

0

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

0

Не совсем то, что вы ищете, но я использовал ESC-! command в подобных ситуациях, чтобы быстро запустить простую команду оболочки в emacs.

Смежные вопросы