Git
Chapters ▾ 2nd Edition

A1.4 Appendix A: 다양한 환경에서 Git 사용하기 - Bash

Bash

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 프로젝트 디렉토리에 들어가면 아래와 같이 보인다.

`bash` 프롬프트.
Figure 162. bash 프롬프트.

여기서 소개한 두 스크립트 git-completion.bashgit-prompt.sh 에 대해 자세히 알고 싶으면 코드를 읽어 보는 게 좋다.