Bash 사용자라면 평소 사용하던 패턴대로 Git을 설정해 사용할 수 있다. Git에는 쉘에 유용한 플러그인이 들어있는데 자동으로 적용되진 않는다.
먼저 Git 소스에 들어 있는 contrib/completion/git-completion.bash
을 가져다가 홈 디렉토리 어디엔가 넣는다. 그리고 .bashrc
파일에 추가한다.
. ~/git-completion.bash
이렇게 적용하고 Git 저장소에 들어가서 아래와 같이 입력한다.
$ git chec<tab>
git checkout
이라고 자동완성 된다.
Git 하위 명령어와 파라미터, 리모트, Refs까지 관련된 모든 것이 전부 자동완성된다.
게다가 프롬프트에 Git 저장소의 정보를 보여줄 수 있다.
단순하게 보여주는 것도 가능하고 꼼꼼하게 보여주는 것도 가능하다. 여기서는 사람들이 공통적으로 사용하는 현 브랜치 이름과 워킹디렉토리 상태 정보를 보여주는 것을 살펴본다.
Git 소스 저장소에서 contrib/completion/git-prompt.sh
파일을 복사해서 홈 디렉토리에 넣고 아래와 같이 .bashrc
파일에 추가한다.
. ~/git-prompt.sh
export GIT_PS1_SHOWDIRTYSTATE=1
export PS1='\w$(__git_ps1 " (%s)")\$ '
\w
는 현 워킹 디렉토리를, \$
는 $
를 출력하고, __git_ps1 " (%s)"
는 git-prompt.sh
에 있는 함수에 포맷을 아규먼트로 주고 호출하는 것이다.
이제부터는 Git 프로젝트 디렉토리에 들어가면 아래와 같이 보인다.
여기서 소개한 두 스크립트 git-completion.bash
와 git-prompt.sh
에 대해 자세히 알고 싶으면 코드를 읽어 보는 게 좋다.