Как я могу заставить мерзавца сделать предложение "ты имел в виду"? - PullRequest
117 голосов
/ 02 марта 2011

Я печатаю

git puhs

А мерзавец говорит:

kristian@office:~/myrepo$ git puhs
git: 'puhs' is not a git command. See 'git --help'

Did you mean this?
      push

Что такое параметр конфигурации, чтобы git просто делал предложенную команду, если она содержит только одно предложение?

Ответы [ 4 ]

144 голосов
/ 02 марта 2011

Согласно git-config (1) , вы хотите установить help.autocorrect соответствующим образом.Например, git config --global help.autocorrect 5 заставит его подождать полсекунды перед выполнением команды, чтобы вы могли сначала увидеть сообщение.

23 голосов
/ 19 апреля 2014

Автозамена хороша, но мой OCD-self нуждается в немного большем контроле того, что происходит.Итак, я написал простой скрипт, который просто выбирает первое предложение, предоставленное git.Вы запускаете скрипт после неудачной команды и используете встроенный синтаксис подстановки истории bash.Кроме того, если вы набираете что-то, что может иметь более одной команды, эта команда позволяет вам выбрать другую, а не первую опцию.

Это будет выглядеть примерно так:

kristian@office:~/myrepo$ git puhs
git: 'puhs' is not a git command. See 'git --help'

Did you mean this?
      push

kristian@office:~/myrepo$ idid !!
Counting objects: 18, done.
Delta compression using up to 32 threads.
Compressing objects: 100% (10/10), done.
Writing objects: 100% (10/10), 1.17 KiB, done.
Total 10 (delta 6), reused 0 (delta 0)

Плюс, интересно набрать что-нибудь с двумя восклицательными знаками.Так что бонус за это.

Вот суть с моим сценарием

17 голосов
/ 02 марта 2011

В качестве альтернативы help.autocorrect: если вы постоянно делаете одни и те же опечатки, вы можете создать для них псевдонимы в файле .gitconfig

[alias]
    puhs = push

(Я делаю это также с псевдонимами оболочки, где я никогда не смогу правильно ввести mkae^H^H^H^Hmake.)

16 голосов
/ 01 ноября 2015

Также взгляните на thefuck

Это может исправить опечатки, а также выполнить предложения.Не ограничивается только git.

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