Programming

git가“당신이 의미 한”제안을 어떻게 할 수 있습니까?

procodes 2020. 7. 18. 23:35
반응형

git가“당신이 의미 한”제안을 어떻게 할 수 있습니까?


나는 타이핑한다

git puhs

그리고 자식은 말합니다 :

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

Did you mean this?
      push

제안 사항이 하나만있는 경우 git이 제안 된 명령을 수행하도록 구성 설정은 무엇입니까?


git-config (1) 에 따르면 help.autocorrect적절하게 설정하려고합니다 . 예를 들어, git config --global help.autocorrect 5명령을 실행하기 전에 0.5 초 정도 기다리면 메시지를 먼저 볼 수 있습니다.


자동 고침은 훌륭하지만 내 OCD 자체는 진행 상황을 조금 더 제어해야합니다. 그래서 나는 git이 제공하는 첫 번째 제안을 선택하는 간단한 스크립트를 작성했습니다. 실패한 명령 후에 스크립트를 실행하고 내장 된 bash 히스토리 대체 "bang bang"구문을 사용하십시오. 또한 둘 이상의 명령이있을 수있는 것을 입력하는 경우이 명령을 사용하면 첫 번째 옵션 이외의 명령을 선택할 수 있습니다.

다음과 같이 보일 것입니다.

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)

또한 두 개의 느낌표로 무엇이든 입력하는 것이 재미 있습니다. 그래서 보너스입니다.

여기의 내 스크립트 요점


help.autocorrect에 대한 대안으로 : 항상 같은 오타를 만들면 .gitconfig 파일에서 별칭을 만들 수 있습니다.

[alias]
    puhs = push

(필자는 mkae^H^H^H^Hmake정확하게 입력 할 수없는 쉘 별칭 으로도이 작업을 수행 합니다.)


또한 살펴보세요 thefuck

오타를 수정하고 제안을 수행 할 수도 있습니다. 자식에만 국한되지 않습니다.

참고 : https://stackoverflow.com/questions/5167367/how-can-i-make-git-do-the-did-you-mean-suggestion

반응형