3.1.Git 사용법

Git은 오늘날 가장 인기 있는 버전 관리 시스템 중 하나입니다. 코드 변경 사항 추적, 협업, 프로젝트 이력 관리 등을 위한 강력한 도구입니다. 이 가이드에서는 Git 기본 사용법부터 브랜치 관리, 원격 리포지토리 작업까지 단계별로 설명합니다.

Git 기초 기능

Git 설정

사용자 이름과 이메일 설정:

  1. Git Bash 또는 터미널을 실행합니다.
  2. 다음 명령을 사용하여 사용자 이름을 설정합니다.
git config --global user.name "<사용자 이름>"
  1. 다음 명령을 사용하여 이메일 주소를 설정합니다.
git config --global user.email "<이메일 주소>"

기본 에디터 설정:

  1. Git Bash 또는 터미널을 실행합니다.
  2. 다음 명령을 사용하여 기본 에디터를 설정합니다.
git config --global core.editor "<에디터 이름>"

예: Visual Studio Code를 기본 에디터로 설정

git config --global core.editor "code"

리포지토리 초기화 및 복제

새 리포지토리 초기화:

  1. 새 폴더를 만들고 폴더로 이동합니다.
  2. 다음 명령을 사용하여 새 Git 리포지토리를 초기화합니다.
git init

리포지토리 복제:

  1. 복제하려는 리포지토리의 URL을 복사합니다.
  2. 새 폴더를 만들고 폴더로 이동합니다.
  3. 다음 명령을 사용하여 리포지토리를 복제합니다.
git clone <URL>

변경 사항 추적

상태 확인:

  1. 다음 명령을 사용하여 현재 작업 트리의 상태를 확인합니다.
git status

변경 사항 스테이징:

  1. 다음 명령을 사용하여 변경된 파일을 스테이징 영역에 추가합니다.
git add <파일 이름>

커밋:

  1. 다음 명령을 사용하여 스테이징 영역에 있는 변경 사항을 커밋합니다.
git commit -m "<커밋 메시지>"

브랜치와 병합

브랜치 생성 및 전환:

  1. 다음 명령을 사용하여 새 브랜치를 생성합니다.
git branch <브랜치 이름>
  1. 다음 명령을 사용하여 브랜치를 전환합니다.
git checkout <브랜치 이름>

병합과 충돌 해결:

  1. 다음 명령을 사용하여 현재 브랜치를 다른 브랜치에 병합합니다.
git merge <브랜치 이름>
  1. 병합 충돌이 발생하면 수동으로 해결해야 합니다.

원격 리포지토리 작업

원격 리포지토리 추가 및 제거:

  1. 다음 명령을 사용하여 원격 리포지토리를 추가합니다.
git remote add <이름> <URL>
  1. 다음 명령을 사용하여 원격 리포지토리를 제거합니다.
git remote remove <이름>

푸시 및 풀:

  1. 다음 명령을 사용하여 로컬 변경 사항을 원격 리포지토리에 푸시합니다.
git push <이름> <브랜치 이름>
  1. 다음 명령을 사용하여 원격 리포지토리의 변경 사항을 로컬 리포지토리에 풀합니다.
git pull <이름> <브랜치 이름>

Git 고급 기능

이전 버전으로 되돌리기:

  1. 다음 명령을 사용하여 특정 커밋 해시로 되돌릴 수 있습니다.
git reset --hard <커밋 해시>
  1. 다음 명령을 사용하여 특정 커밋까지 되돌릴 수 있습니다.
git reset --hard HEAD~<커밋 수>

stash:

  1. 다음 명령을 사용하여 현재 작업 중인 변경 사항을 임시로 보관할 수 있습니다.
git stash
  1. 다음 명령을 사용하여 보관된 변경 사항을 다시 적용할 수 있습니다.
git stash pop

리비전 관리:

  1. 다음 명령을 사용하여 특정 버전의 파일을 확인할 수 있습니다.
git show <커밋 해시>:<파일 이름>
  1. 다음 명령을 사용하여 특정 버전의 트리를 확인할 수 있습니다.
git checkout <커밋 해시>

태그:

  1. 다음 명령을 사용하여 특정 커밋에 태그를 지정할 수 있습니다.
git tag <태그 이름> <커밋 해시>
  1. 다음 명령을 사용하여 태그된 버전을 확인할 수 있습니다.
git show <태그 이름>

.gitignore:

  1. .gitignore 파일을 만들고 추적하지 않으려는 파일 패턴을 추가합니다.

Git 팁과 권장 사항

  • 커밋 메시지를 명확하고 간결하게 작성하십시오.
  • 주기적으로 푸시하여 변경 사항을 백업하십시오.
  • 브랜치를 사용하여 작업을 분리하십시오.
  • 충돌 해결 방법을 익히십시오.
  • Git 관련 도구 및 플러그인을 활용하십시오.
  • Git 커뮤니티에서 도움을 받으십시오.

Git은 강력한 도구이지만, 숙련되기까지는 시간이 걸릴 수 있습니다. 꾸준히 사용하고 다양한 기능을 익혀 자신에게 맞는 workflows를 개발하십시오.

source: DevOps/3.Version_Control/3.1.md