Почему Git выдает "Неизвестная команда: выбрать" во время интерактивной перебазировки?

Я сделал:

git rebase mybranch --interactive

И я отредактировал мой файл rebase-todo примерно так:

pick aec2c2b Add foo method to bar
edit 8441f4b Do something slightly wrong
pick dabcc80 Do something else correctly

Но когда я сказал Git сделать это, я получил:

Unknown command: pick aec2c2b8f9c314f9dddc67a2c71f8be0a27c0fab Add foo method to bar
Please fix this using 'git rebase --edit-todo'.

Какие? Но pick является действительной командой!

Почему это произошло, и как я могу это исправить?

Выход из git --version:

git version 2.8.1.windows.1

Я использую Windows 10.

1 ответ

Решение

Так как я сотрудничаю с разработчиками, которые используют Visual Studio, мой редактор настроен для сохранения файлов в формате UTF-8 с BOM. Git не знает, что делать со спецификациями, поэтому я и получил ошибку. (Git думает, что я пытался использовать команду BOMpick вместо pick, Вы можете определить спецификацию в сообщении об ошибке, которое я включил в свой вопрос.)

Удаление спецификации исправило ошибку. В частности, я добавил это в свой .editorconfig:

[.git/**]
charset = utf-8

Потому что в верхней части файла уже было это:

[*]
charset = utf-8-bom
Другие вопросы по тегам