Git은 소스 코드 관리를 위한 분산 버전 관리 시스템으로, 많은 개발자들이 협업 프로젝트에서 사용하고 있습니다.
저도 맨날 필요할때 마다 구글링이나 gpt 한테 물어보는 기억할겸 정리하려고 글을 씁니다 ㅋㅋㅋ
이 글에서는 자주 사용하는 Git 명령어를 보다 자세히 정리하여 소개하겠습니다. 이 명령어들을 익히면 Git을 보다 효율적으로 사용할 수 있습니다.
1. Git 초기화 및 클론
git init
현재 디렉토리를 새로운 Git 저장소로 초기화합니다.
git init
git clone
원격 저장소를 로컬 디렉토리에 복제합니다.
git clone <repository-url>
2. 상태 확인 및 변경 사항 관리
git status
작업 디렉토리의 상태를 확인합니다. 변경된 파일, 스테이징된 파일, 추적되지 않은 파일 등을 보여줍니다.
git status
git add
작업 디렉토리에서 변경된 파일을 스테이징 영역에 추가합니다.
git add <file>
# 모든 파일 추가
git add .
git commit
스테이징된 변경 사항을 커밋하여 로컬 저장소에 저장합니다.
git commit -m "Commit message"
git diff
작업 디렉토리와 스테이징 영역 또는 이전 커밋 간의 차이점을 보여줍니다.
# 작업 디렉토리와 스테이징 영역 간의 차이
git diff
# 스테이징 영역과 이전 커밋 간의 차이
git diff --staged
git log
커밋 로그를 확인합니다.
git log
# 간단한 로그
git log --oneline
# 그래프 형태의 로그
git log --graph --oneline --all
3. 브랜치 관리
git branch
브랜치를 나열하거나, 새 브랜치를 생성하거나, 브랜치를 삭제합니다.
# 브랜치 목록 보기
git branch
# 새로운 브랜치 생성
git branch <branch-name>
# 브랜치 삭제
git branch -d <branch-name>
# 원격 브랜치 삭제
git push origin --delete <branch-name>
git checkout
브랜치를 전환하거나, 특정 커밋으로 작업 디렉토리를 업데이트합니다.
# 브랜치 전환
git checkout <branch-name>
# 새 브랜치 생성 및 전환
git checkout -b <branch-name>
# 특정 커밋 체크아웃
git checkout <commit-hash>
git merge
다른 브랜치를 현재 브랜치로 병합합니다.
git merge <branch-name>
git rebase
다른 브랜치의 변경 사항을 현재 브랜치의 시작 지점으로 재배치합니다.
git rebase <branch-name>
4. 원격 저장소 관리
git remote
원격 저장소를 추가, 조회, 삭제합니다.
# 원격 저장소 추가
git remote add <name> <url>
# 원격 저장소 목록 보기
git remote -v
# 원격 저장소 제거
git remote remove <name>
git fetch
원격 저장소에서 데이터를 가져옵니다. 로컬 브랜치에는 변경 사항이 적용되지 않습니다.
git fetch <remote-name>
git pull
원격 저장소의 변경 사항을 가져와 현재 브랜치에 병합합니다.
git pull <remote-name> <branch-name>
git push
로컬 커밋을 원격 저장소에 푸시합니다.
git push <remote-name> <branch-name>
# 모든 브랜치 푸시
git push --all <remote-name>
# 태그 푸시
git push --tags
5. 태그 관리
git tag
태그를 생성하고, 조회하고, 삭제합니다.
# 태그 목록 보기
git tag
# 태그 생성
git tag <tag-name>
# 주석이 있는 태그 생성
git tag -a <tag-name> -m "Tag message"
# 특정 커밋에 태그 생성
git tag <tag-name> <commit-hash>
# 태그 삭제
git tag -d <tag-name>
# 원격 저장소의 태그 삭제
git push origin --delete <tag-name>
# 태그 푸시
git push origin <tag-name>
6. 변경 사항 되돌리기
git reset
스테이징 영역 또는 작업 디렉토리를 특정 상태로 되돌립니다.
# 스테이징 영역을 이전 커밋 상태로 되돌림
git reset <commit>
# 스테이징 영역과 작업 디렉토리를 이전 커밋 상태로 되돌림
git reset --hard <commit>
# 최근 커밋 되돌리기
git reset --soft HEAD~1
git revert
특정 커밋의 변경 사항을 되돌립니다.
git revert <commit>
git clean
추적되지 않은 파일을 제거합니다.
# 확인
git clean -n
# 실제 제거
git clean -f
# 디렉토리도 제거
git clean -fd
7. 기타 유용한 명령어
git stash
현재 작업 중인 변경 사항을 임시로 저장합니다.
# 변경 사항 저장
git stash
# 저장된 변경 사항 적용
git stash apply
# 저장된 변경 사항 목록 보기
git stash list
# 특정 스태시 적용
git stash apply <stash@{index}>
# 스태시 삭제
git stash drop <stash@{index}>
git cherry-pick
특정 커밋을 현재 브랜치에 적용합니다.
git cherry-pick <commit>
git bisect
이진 검색을 통해 버그를 도입한 커밋을 찾습니다.
# bisect 시작
git bisect start
# 정상 커밋 지정
git bisect good <commit>
# 문제 커밋 지정
git bisect bad <commit>
# bisect 종료
git bisect reset
위에서 소개한 Git 명령어들은 개발자가 프로젝트를 효율적으로 관리하는 데 필수적입니다. Git을 처음 사용하는 분들도 위 명령어들을 익히고 나면 보다 쉽게 Git을 활용할 수 있을 것입니다. 다양한 Git 명령어를 숙지하고 실무에 적용해보세요. Git을 통해 협업과 소스 코드 관리가 한층 더 수월해질 것입니다.
css,JavaScript 줄 바꿈 하는 법
'개발' 카테고리의 다른 글
React에서 바텀시트(Bottom Sheet) 구현하기: 상세 가이드 (0) | 2024.06.30 |
---|---|
CSS와 JavaScript에서 문자열 줄 바꿈 구현하는 방법 (0) | 2024.06.21 |
사내 칸반보드 개발 프로젝트 - 5 (0) | 2024.05.26 |
사내 칸반보드 개발 프로젝트 - 4 (0) | 2024.05.22 |
사내 칸반보드 개발 프로젝트 -3 (0) | 2024.05.22 |
댓글