[기술 정리] 12. Terminal로 Git 협업하는 방법

KangHo Lee's avatar
Nov 27, 2024
[기술 정리] 12. Terminal로 Git 협업하는 방법

Git Bash 사용자 등록

notion image
notion image
  • git config —global user.name (유저이름 설정)
  • git config —global user.email(이메일 설정)
  • git config list (설정 확인)

1. Terminal 설정

  • New terminal
notion image
  • VScode 기준 Git Bash 선택
    • Select Default Profile로 기본 터미널 실행 프로그램 설정이 가능합니다.

2. 로컬 저장소 생성 및 원격 저장소와 연결

  • git init
  • git clone 리포지토리 주소
    • 현재 폴더에 새 폴더가 생기면서 repository 파일을 불러옵니다.
    • 폴더로 이동해서 작업 시작하면 됩니다.
  • 로컬 저장소 폴더를 생성합니다.
    • git remote add origin 리포지토리 주소
    • git pull origin master

3. 작업할 폴더에서 시작

  • cd 폴더이름 → 폴더로 이동합니다.
    • cd(Change Directory)
    • cd .. → 상위 폴더로 이동
  • git pull origin master
    • 작업 시작 전에 항상 master 브랜치를 pull하고 시작합니다.
  • git checkout -b join/topic(브랜치 이름)
      1. -b 가 있을 경우 해당 브랜치이름의 브랜치가 없을 경우 생성하고 브랜치를 변경(switch)합니다.
💡
브랜치 이름 join/topic일 경우
  • /topic → 컨벤션 규칙으로 주제를 의미합니다.
  • join에 대한 기능을 만들 때 join/topic으로 브랜치를 만들면 됩니다.
  • 작업을 시작해서 기능을 구현합니다.
  • git add .
  • git commit -m “[feat] join”
💡
컨벤셔널 커밋(Conventional Commits)
[feat] → 새로운 기능 개발
[fix] → 버그 수정
  • git checkout master
  • git pull origin master
💡
내가 만든 기능(브랜치)를 push하기 전에 항상 master를 최신 상태로 만들어 놔야 합니다.
pull 하고 Fast-forward 메세지가 떠야합니다.
  • git checkout join/topic
  • git rebase master
      1. 로컬 저장소에서 충돌을 해결하기 위해서 rebase작업을 합니다.
notion image
  • 충돌 발생 시 코드를 수정합니다.
  • git add .
  • git commit -m “충돌 해결”
  • git rebase —continue
      1. git rebase —abort를 입력할 경우 rebase를 취소하고 원래 상태로 돌아갑니다.
  • git push origin join/topic
  • 깃 허브에서 Pull Request 를 생성합니다.
  • base:master ← compare:join/topic 방향으로 create pull request합니다.
  • 원격 저장소 master 브랜치 권한이 있는 사람이 검토하고 병합합니다.

4. 명령어

  • git reflog
    • rebase, merge 등 모든 기록이 남는 로그 확인
  • git branch
    • 현재 생성된 브랜치 이름 확인
  • clear
    • 터미널 텍스트 삭제
  • git reset —hard b5e1
    • 해당 커밋으로 하드리셋을 수행합니다.
notion image

5. rebase 명령어 관련

  1. git rebase -i HEAD~2
      • HEAD(최신 커밋) 부터 총 2개의 커밋이 선택됩니다.
        • notion image
  1. i 를 누르면 INSERT 모드가 됩니다.
    1. 커밋 삭제를 위해 pick을 d로 바꿉니다.
  1. esc를 누르면 INSERT 모드가 해제됩니다.
  1. :wq 하면 vi 에디터가 종료됩니다.
 
Share article

devleekangho