3.1.Git 사용법
Git은 오늘날 가장 인기 있는 버전 관리 시스템 중 하나입니다. 코드 변경 사항 추적, 협업, 프로젝트 이력 관리 등을 위한 강력한 도구입니다. 이 가이드에서는 Git 기본 사용법부터 브랜치 관리, 원격 리포지토리 작업까지 단계별로 설명합니다.
Git 기초 기능
Git 설정
사용자 이름과 이메일 설정:
- Git Bash 또는 터미널을 실행합니다.
- 다음 명령을 사용하여 사용자 이름을 설정합니다.
git config --global user.name "<사용자 이름>"
- 다음 명령을 사용하여 이메일 주소를 설정합니다.
git config --global user.email "<이메일 주소>"
기본 에디터 설정:
- Git Bash 또는 터미널을 실행합니다.
- 다음 명령을 사용하여 기본 에디터를 설정합니다.
git config --global core.editor "<에디터 이름>"
예: Visual Studio Code를 기본 에디터로 설정
git config --global core.editor "code"
리포지토리 초기화 및 복제
새 리포지토리 초기화:
- 새 폴더를 만들고 폴더로 이동합니다.
- 다음 명령을 사용하여 새 Git 리포지토리를 초기화합니다.
git init
리포지토리 복제:
- 복제하려는 리포지토리의 URL을 복사합니다.
- 새 폴더를 만들고 폴더로 이동합니다.
- 다음 명령을 사용하여 리포지토리를 복제합니다.
git clone <URL>
변경 사항 추적
상태 확인:
- 다음 명령을 사용하여 현재 작업 트리의 상태를 확인합니다.
git status
변경 사항 스테이징:
- 다음 명령을 사용하여 변경된 파일을 스테이징 영역에 추가합니다.
git add <파일 이름>
커밋:
- 다음 명령을 사용하여 스테이징 영역에 있는 변경 사항을 커밋합니다.
git commit -m "<커밋 메시지>"
브랜치와 병합
브랜치 생성 및 전환:
- 다음 명령을 사용하여 새 브랜치를 생성합니다.
git branch <브랜치 이름>
- 다음 명령을 사용하여 브랜치를 전환합니다.
git checkout <브랜치 이름>
병합과 충돌 해결:
- 다음 명령을 사용하여 현재 브랜치를 다른 브랜치에 병합합니다.
git merge <브랜치 이름>
- 병합 충돌이 발생하면 수동으로 해결해야 합니다.
원격 리포지토리 작업
원격 리포지토리 추가 및 제거:
- 다음 명령을 사용하여 원격 리포지토리를 추가합니다.
git remote add <이름> <URL>
- 다음 명령을 사용하여 원격 리포지토리를 제거합니다.
git remote remove <이름>
푸시 및 풀:
- 다음 명령을 사용하여 로컬 변경 사항을 원격 리포지토리에 푸시합니다.
git push <이름> <브랜치 이름>
- 다음 명령을 사용하여 원격 리포지토리의 변경 사항을 로컬 리포지토리에 풀합니다.
git pull <이름> <브랜치 이름>
Git 고급 기능
이전 버전으로 되돌리기:
- 다음 명령을 사용하여 특정 커밋 해시로 되돌릴 수 있습니다.
git reset --hard <커밋 해시>
- 다음 명령을 사용하여 특정 커밋까지 되돌릴 수 있습니다.
git reset --hard HEAD~<커밋 수>
stash:
- 다음 명령을 사용하여 현재 작업 중인 변경 사항을 임시로 보관할 수 있습니다.
git stash
- 다음 명령을 사용하여 보관된 변경 사항을 다시 적용할 수 있습니다.
git stash pop
리비전 관리:
- 다음 명령을 사용하여 특정 버전의 파일을 확인할 수 있습니다.
git show <커밋 해시>:<파일 이름>
- 다음 명령을 사용하여 특정 버전의 트리를 확인할 수 있습니다.
git checkout <커밋 해시>
태그:
- 다음 명령을 사용하여 특정 커밋에 태그를 지정할 수 있습니다.
git tag <태그 이름> <커밋 해시>
- 다음 명령을 사용하여 태그된 버전을 확인할 수 있습니다.
git show <태그 이름>
.gitignore:
- .gitignore 파일을 만들고 추적하지 않으려는 파일 패턴을 추가합니다.
Git 팁과 권장 사항
- 커밋 메시지를 명확하고 간결하게 작성하십시오.
- 주기적으로 푸시하여 변경 사항을 백업하십시오.
- 브랜치를 사용하여 작업을 분리하십시오.
- 충돌 해결 방법을 익히십시오.
- Git 관련 도구 및 플러그인을 활용하십시오.
- Git 커뮤니티에서 도움을 받으십시오.
Git은 강력한 도구이지만, 숙련되기까지는 시간이 걸릴 수 있습니다. 꾸준히 사용하고 다양한 기능을 익혀 자신에게 맞는 workflows를 개발하십시오.
source: DevOps/3.Version_Control/3.1.md