728x90
반응형
Git Shortcut 설정 문서
Git을 더 빠르고 효율적으로 사용하기 위한 Alias(단축키) 설정 가이드입니다.
설정 원칙
- 안전한 명령어만 alias: 위험한 명령어(reset --hard, rm, clean 등)는 실수 방지를 위해 풀네임 사용
- 자주 쓰는 것만: 하루에 여러 번 사용하는 명령어에 집중
- 짧고 직관적: 1-2글자로 기억하기 쉽게
설치 명령어
터미널에 아래 내용을 복사해서 붙여넣으면 한 번에 설정됩니다.
한 번에 설치하기
Bash
# 읽기 전용 (100% 안전)
git config --global alias.s status
git config --global alias.l log
git config --global alias.d diff
git config --global alias.sh show
git config --global alias.b branch
git config --global alias.f fetch
# 안전한 쓰기 명령어
git config --global alias.c checkout
git config --global alias.sw switch
git config --global alias.a add
git config --global alias.cm commit
git config --global alias.p push
git config --global alias.pl pull
git config --global alias.t tag
git config --global alias.st stash
# 유용한 복합 alias
git config --global alias.lg "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
git config --global alias.unstage 'reset HEAD --'
git config --global alias.last 'log -1 HEAD'
git config --global alias.amend 'commit --amend'
Alias 목록
필요한 것만 개별적으로 설정하고 싶다면 아래 목록을 참고하세요.
1. 읽기 전용 명령어 (안전)
| Alias | 원본 명령어 | 설명 |
| g s | git status | 작업 상태 확인 |
| g l | git log | 커밋 히스토리 |
| g d | git diff | 변경사항 비교 |
| g sh | git show | 커밋 상세보기 |
| g b | git branch | 브랜치 목록 |
| g f | git fetch | 원격 변경사항 가져오기 |
2. 안전한 쓰기 명령어
| Alias | 원본 명령어 | 설명 |
| g c | git checkout | 브랜치 전환 |
| g sw | git switch | 브랜치 전환 (최신) |
| g a | git add | 파일 스테이징 |
| g cm | git commit | 커밋 생성 |
| g p | git push | 원격에 푸시 |
| g pl | git pull | 원격에서 풀 |
| g t | git tag | 태그 관리 |
| g st | git stash | 임시 저장 |
3. 복합 명령어 (꿀팁)
| Alias | 원본 명령어 | 설명 |
| g lg | git log --graph... | 그래프가 포함된 예쁜 로그 |
| g unstage | git reset HEAD -- | add 취소 (스테이징 내리기) |
| g last | git log -1 HEAD | 바로 직전 커밋 확인 |
| g amend | git commit --amend | 마지막 커밋 수정 |
사용 예시
일상적인 워크플로우
Bash
g s # 상태 확인
g d # 변경사항 확인
g a src/ # 파일 추가
g cm -m "feat: add feature" # 커밋
g p origin feature-branch # 푸시
g l # 로그 확인
브랜치 작업
Bash
g b # 브랜치 목록
g c main # main으로 전환
g c -b feature/new-feature # 새 브랜치 생성 및 전환
원격 동기화
Bash
g f origin # fetch
g pl origin main # pull
g p origin feature-branch # push
❌ Alias 하지 않는 위험 명령어
다음 명령어들은 절대 alias하지 않습니다. 항상 풀네임을 타이핑하며 한 번 더 생각하고 사용해야 합니다.
- git reset --hard : 작업 내용 영구 삭제
- git clean -fd : 추적되지 않은 파일 삭제
- git rm : 파일 삭제
- git branch -D : 브랜치 강제 삭제
- git push --force : 원격 히스토리 덮어쓰기
- git push --force-with-lease : 안전한 강제 푸시
- git rebase : 히스토리 재작성
- git cherry-pick : 커밋 선택 적용
- git revert : 커밋 되돌리기
이유: 긴 타이핑 시간 = 생각할 시간 (실수 방지 및 명령어의 의미 명확 인지)
설정 확인 및 관리
현재 설정된 alias 보기
Bash
git config --global --get-regexp alias
특정 alias 삭제
Bash
git config --global --unset alias.s
모든 alias 삭제
Bash
git config --global --remove-section alias
전제 조건
이 문서는 git 명령어를 g로 alias한 환경을 가정합니다. 쉘 설정 파일(~/.bashrc 또는 ~/.zshrc)에 아래 내용을 추가해주세요.
Bash
alias g='git'
설정 없이 사용하려면 g 대신 git으로 사용하면 됩니다.
- git s → git status
- git cm -m "message" → git commit -m "message"
팀 협업 가이드
- 개인 환경 설정: 이 alias는 개인 생산성 도구입니다. 프로젝트 설정(gitignore 등)에 포함하지 마세요.
- 문서/코드리뷰: 팀원과 소통할 때는 표준 git 명령어(git status, git commit 등)를 사용하세요.
- 위험한 명령어: 위험한 작업(reset --hard 등)을 가이드할 때는 항상 풀네임으로 알려주세요.
유지보수
- 정기적으로 사용 빈도 검토
- 잘 안 쓰는 alias는 과감히 제거
- 새로운 반복 패턴 발견 시 추가
728x90
반응형
'GIT > GIT 심화' 카테고리의 다른 글
| Git Commit Message Convention (0) | 2023.01.29 |
|---|---|
| Tag를 이용한 버전 관리 (0) | 2023.01.29 |
| Diff로 변경사항 확인하기 (1) | 2023.01.28 |
| rm으로 Cached 관리하기 (0) | 2023.01.28 |
| LOCAL, REMOTE와 HEAD, Prune (1) | 2023.01.28 |