Git 기본 사용법

YOOYEON.DEV·2023년 5월 23일
0

Mac에서 Git 설치하기

brew install git
  • 터미널 창에서 깃허브 로그인 오류 - Personal Access Token 생성하기
    https://kingwltn.tistory.com/4

  • 저장소 초기화 시 master 대신 main을 기본 브랜치로 설정하기

git config --global init.defaultBranch main

Tool

.gitignore 기본 문법

공식 문서

# 확장자가 .config 인 파일은 무시
*.config

# .config 파일들은 모두 무시되지만, log.config는 무시하지 않음
!log.config


기본 명령어

branch

# 로컬의 브랜치 목록 보기
git branch

# 로컬과 원격 브랜치 목록 보기
git branch -a

switch

기존에는 git checkout으로 브랜치를 변경했었다.
2.23버전부터는 switch와 restore로 분리되었다.

# branch1로 브랜치 변경
git switch branch1

되돌리기

reset과 revert

  • reset

    • 돌아가는 시점 이후의 내역은 삭제됨
  • revert

    • 되돌리고싶은 커밋을 거꾸로 수행
    • 'add xx'를 했다면 -'add xx' 수행 후 커밋에 남음
git reset --hard (되돌아가고싶은 커밋의 해시)


git revert (되돌리고 싶은 커밋의 해시)

브랜치 병합

merge와 rebase

  • merge: 잔가지가 남음
  • rebase: 잔가지를 남기지 않고 통째로 브랜치를 이어붙임
    협업 시 사용하면 꼬일 수 있음
# main 브랜치로 branch1을 병합하는 경우
(main) git merge branch1

# main 브랜치로 branch22를 이어붙이는 경우
(branch2) git rebase main
# rebase 후 branch2 시점으로 fast-foward
(main) git merge branch2
# 병합한 브랜치는 삭제
git branch -d {삭제할 브랜치 이름}

충돌

merge 할 때 발생하는 충돌

# 충돌 발생시
(main) git merge branch1

# 1. 머지 전으로 되돌리는 경우
(main) git merge --abort

# 2. 충돌 해결 후 다시 머지 하는 경우
(main) git add . 
(main) git commit

rebase 할 때 발생하는 충돌

# 충돌 발생시
(branch2) git rebase main

# 1. rebase 전으로 되돌리는 경우
(branch2) git rebase --abort

# 2. 충돌 해결 후 다시 rebase 하는 경우
(branch2) git add . 
(branch2) git rebase --continue
(main) git merge branch2

원격 저장소

# 원격 저장소 정보
git remote

# 원격 저장소 이름과 url 
git remote -v

# 현재 브랜치를 자동으로 origin 저장소 main 브랜치에 연결
git push -u origin main

# 위 설정을 하면 다음부턴 저장소, 브랜치 없이 이렇게만 입력하면 됨
git pull
git push

# 로컬 브랜치 삭제 후 연결된 원격 저장소 브랜치도 삭제하기
git branch -d branch3
git push origin --delete branch3
profile
백엔드 개발자 입니다

0개의 댓글