작업 효율을 높여주는 Git alias 모음

ChaeChae·2022년 11월 18일
2
post-thumbnail

Git alias 사용법

터미널에서 Git 명령어를 사용하다 보면 긴 명령어나 자주 사용되는 명령어를 일일이 타이핑하기 귀찮아진다. 이럴 땐 Git alias를 설정해두면 작업 효율을 향상시킬 수 있다. alias는 키보드로 치면 단축키 같은 개념으로, 명령어를 간단한 단축어로 치환해 사용할 수 있는 것이다. Git config에 alias를 등록하는 명령은 다음과 같다.

$ git config --global alias.<alias> '<command>'

예를 들어 아래와 같이 단축어를 설정해두면 git gl만 입력해도 git config --global -l가 실행된다. 지난 글에서 소개한 autocorrect 기능을 켜두면 git lg라고 잘못 입력해도 git gl이 실행되어 더 편리하게 사용할 수 있다.

$ git config --global alias.gl 'config --global -l'

status & log

git status-sb 옵션을 붙이면 현재 브랜치명과 변경된 파일명만 깔끔하게 볼 수 있다.

$ git config --global alias.st 'status -sb'

git log--oneline 옵션을 붙이면 커밋 로그를 한 줄에 하나씩 컴팩트하게 볼 수 있다. -1 HEAD --stat 옵션을 사용하면 가장 최근 커밋 한 개의 상세 정보를 확인할 수 있어 last라는 alias를 붙였다.

$ git config --global alias.ll 'log --oneline'
$ git config --global alias.last 'log -1 HEAD --stat'

add & commit

아래 첫 번째와 두 번째 명령을 합친 것이 세 번째 명령이다. 세 번째 예시처럼 -a -m 옵션을 사용하면 git ac "commit message" 한 줄로 add와 commit을 동시에 할 수 있다.

$ git config --global alias.ad 'add .'
$ git config --global alias.cm 'commit -m'
$ git config --global alias.ac 'commit -a -m'

amend & reset

커밋을 수정할 때는 --amend를 사용한다. -m 옵션을 붙이면 가장 최근 커밋의 메시지를 수정할 수 있다. --no-edit 옵션을 사용하면 현재 변경 내역을 마지막 커밋에 추가할 수 있어 이미 커밋한 후에 빠뜨린 부분이 생각났을 때 유용하게 사용할 수 있다.

$ git config --global alias.cam 'commit --amend -m'
$ git config --global alias.can 'commit --amend --no-edit'

마지막 커밋 한 개를 되돌리는 명령어에는 기억하기 쉽게 undo라는 alias를 붙였다.

$ git config --global alias.undo 'reset HEAD~1'

push & pull

명령어에 $(git_current_branch)라고 입력하면 현재 브랜치명으로 치환된다. 원격 저장소와 작업할 때 브랜치명을 일일이 입력하지 않아도 되어 편리하게 사용할 수 있다.

$ git config --global alias.ps 'push origin $(git_current_branch)'
$ git config --global alias.pl 'pull origin $(git_current_branch)'
$ git config --global alias.rv 'remote -v'

branch & checkout

branch와 checkout 명령어들도 자주 사용되므로 alias를 정해놓으면 편리하다.

$ git config --global alias.br 'branch'
$ git config --global alias.brd 'branch -D'
$ git config --global alias.co 'checkout'
$ git config --global alias.cob 'checkout -b'

Reference
https://opensource.com/article/20/11/git-aliases

profile
정리 장인 && FE 개발자

0개의 댓글