Git

[Git] Branch : Git으로 협업하기, Git 커밋 관리, Git Bash 명령어 정리

Ofglen 2023. 7. 14. 11:20

Branch: Git으로 협업하기

  • Branch: 시간순으로 최신 커밋을 ‘master’ 브런치가 가리킨다. master 브랜치를 기준으로 새 브랜치를 생성한다.
  • HEAD: 과거/최신 브랜치(커밋)를 넘나들 수 있다
  • merge: [master] 브랜치에 n개의 버전의 합집합을 구하는 것
    • Merge Commit(병합 커밋): 새로운 커밋
    • Fast-forward(빨리 감기): 기존 커밋과 같아서 이동만 하면 되어서 빨리 감기라고 한다
    • Conflict(충돌): 충돌이 난 부분을 확인하고 무엇을 남길지 수동으로 선택
    • Pull Request: 협력자에게 병합 요청 메시지를 보내는 것

 

 

  의의 장점 단점
branch 하나의 원본저장소에서 분기를 나눈다 하나의 원본저장소에서 코드 커밋 이력을 편하게 볼 수 있다 다수의 브랜치를 만들면 관리하기 어렵다
fork 여러 원격저장소를 만들어서 분기를 나눈다 원본저장소에 영향을 미치지 않고 마음껏 코드를 수정할 수 있다 원본저장소의 이력을 보려면 따로 주소를 추가해야한다

 

 

 

 

 

Git Bash

Git 커밋 관리

  • fork: 남의 원본저장소를 복사해서 내 계정의의 GitHub에 원격저장소로 복사해 오는 명령어
  • clone: 원격저장소를 소스트리를 통해 로컬저장소로 가져온다
  • pull request: 원격저장소에서 원본 저장소로 풀 리퀘스트를 보낸다
  • merge: 풀 리퀘스트를 승인하고 병합한다
  • rebase: 묵은 커밋을 새 커밋으로 이력을 조작한다
  • amend: 마지막 커밋 수정하기
  • cherry-pick: 원하는 커밋만 떼서 현재 브랜치에 붙인다
  • reset: 옛날 커밋으로 브랜치를 되돌린다
  • revert: 커밋의 변경사항을 명시적으로 되돌린다
  • stash: 변경사항을 잠시 따로 저장한다

 

 

 

 

Git Bash 명령어 정리

  • pwd: 현재 폴더 위치 확인
  • ls -a : 현재 폴더 파일 목록 확인 (-a 옵션: 숨김 파일도 리스트업)
  • cd: 홈(root) 폴더로 이동. 홈 폴더는 ㅅ용자 이름과 폴더명이 같고 내 문서 폴더의 상위 폴더
  • cd <폴더 이름>: 특정 위치의 디렉토리로 이동
  • cd ../ : 현재 폴더의 상위 폴더로 이동
  • mkdir <새폴더이동>: 현재 폴더 아래에 새로운 폴더 생성
  • echo “Hello Git”: 메아리라는 뜻. 화면에 “” 안의 문자열을 표시한다
  • git status: Git 워킹트리의 상태를 보는 ㅁ여령어
  • git config: git 옵션 설정을 보거나 값을 변경할 수 있다

 

 

  • Git 저장소 초기화
$ git init # Git 저장소 생성
ls -a # 파일 목록 확인 -> [.git] 숨김 폴더
git status # 워킹 트리 상태 확인

 

 

 

 

Git 용어 정리

  • 워킹 트리(=워킹 디렉토리=작업 디렉터리 = 작업 폴더): 사용자가 작업 결과물을 저장하는 곳. 작업폴더에서 [.git] 로컬 저장소를 뺀 나머지 부분을 워킹트리라고 한다.
  • 로컬 저장소: git init 명령어로 생성되는 [.git] 폴더
  • 원격 저장소: 로컬 저장소를 업로드하는 곳 (GitHub Repository)

 

join은 동일 회원 아이디로 가입 보냈을 때 에러 뜨고

login은 응답코드, 토큰 발급 뜨고

post는 전송 했을 때 body가 그냥 빈 공백이에요