Git

[Git] diff, branch, merge

삶_ 2022. 10. 14. 17:02

 

 

커밋/현재파일 확인

  • git diff : 최근 커밋과 현재 파일의 차이점을 보여줌
    • 약간 버그가 많고, 코드가 길어지면 보기가 어려움

 

  • git difftool : 좀더 자세하고 편하게 보기 쉬움
    • :q, :qa 입력하면 종료
    • git difftool 커밋아이디 : 현재 커밋과 해당 커밋을 비교함

 

 

 

깃그래프

  • 커밋 기록을 한눈에 확인 가능

 

 

 

 

branch

  • 커밋 기록이 잘못될까 걱정될 때 필요한 복사본을 만들어줌
  • git branch 브랜치명 : 브랜치 생성
  • git switch 브랜치명 : 해당 브랜치로 이동 (git switch master(main) : 메인으로 이동)
  • git branch -M 수정할이름 : 메인 브랜치이름 수정

 

 

 

merge

  • git merge 합칠(끌어올) 파일 : 합칠 파일을 현재 지점의 브랜치 파일과 분기점을 합칠 수 있다
  • 단 서로 같은 내용을 다르게 수정했을 때 conflict 발생
    • 원하는 코드만 남기고 git add → git commit 하면 해결

 

  • 기존 master 브랜치에 커밋이 없을 경우에 제일 밑의 브랜치로 가게 됨
    • git branch -d 브랜치명 : merge 완료된 브랜치 삭제
    • git branch -D 브랜치명 : merge 안한 브랜치 삭제
  • merge 방법 (깔끔하게 흔적 지우기)
    • rebase & merge
      • git rebase 중심브랜치명
      • git switch 중심브랜치명
      • git merge 새로운브랜치명
      • → merge 할 때 중심 브랜치로 이동해서 합쳐 줌
    • squash and merge
      • git merge --squash 새로운브랜치명 : 브랜치 전부를 합쳐줌 (전에있던 기록들을 하나로)