Git : Branch & Merge

2023. 9. 6. 09:57·Git
반응형

Git을 사용하면서 가장 기본적인 동시에 가장 강력한 기능 중 하나는 '브랜치'와 '병합'입니다. 이 글에서는 Git의 브랜치의 개념과 활용법, 그리고 브랜치를 병합할 때 발생할 수 있는 충돌을 어떻게 해결하는지에 대해 알아보겠습니다.


브랜치의 개념

 

Git의 브랜치는 코드의 특정 버전을 가리키는 포인터입니다. 즉, 개발을 진행하면서 다양한 기능 또는 수정사항을 별도로 관리하고 싶을 때 사용하게 됩니다. 이렇게 하면 한 기능을 개발하는 도중에 다른 기능이나 버그 수정을 별도의 브랜치에서 진행할 수 있습니다.

브랜치 활용법

 

브랜치 확인: 현재 repository의 브랜치 목록을 확인하려면 git branch 명령을 사용합니다.
브랜치 생성: 새로운 브랜치를 생성하려면 git branch [브랜치 이름]을 사용합니다.
브랜치 이동: 생성한 브랜치로 이동하려면 git checkout [브랜치 이름]을 사용합니다. 최근에는 git switch [브랜치 이름]을 권장하기도 합니다.
브랜치 삭제: 브랜치를 삭제하려면 git branch -d [브랜치 이름]을 사용합니다.

 

브랜치 병합

브랜치에서의 작업을 완료하고 이를 메인 브랜치에 반영하려면 브랜치를 병합해야 합니다. 이를 위해서는:

 

  1. 병합하려는 대상 브랜치로 이동합니다. (예: git checkout main)
  2. git merge [병합하려는 브랜치 이름] 명령을 사용하여 브랜치를 병합합니다.

충돌의 발생과 해결

 

브랜치를 병합할 때 두 브랜치에서 동일한 부분의 코드가 변경되었다면 충돌이 발생합니다. 이때 Git은 충돌이 발생한 부분을 표시해줍니다.

<<<<<<< HEAD
Console.WriteLine("메인 브랜치의 내용");
=======
Console.WriteLine("병합하려는 브랜치의 내용");
>>>>>>> [브랜치 이름]


이렇게 충돌이 표시된 부분을 직접 수정하여 해결한 뒤, git add [파일 이름]과 git commit 명령을 사용하여 충돌을 해결한 것을 커밋할 수 있습니다.

마치며

Git의 브랜치와 병합 기능은 협업을 할 때나 다양한 기능을 동시에 개발할 때 매우 유용합니다. 초기에는 조금 복잡해 보일 수 있지만, 몇 번 사용해보면 쉽게 익숙해질 것입니다. 특히 충돌을 해결하는 과정은 처음에는 어려울 수 있지만, 경험을 쌓으면서 자연스럽게 해결 방법을 익힐 수 있습니다.

저작자표시 비영리 변경금지 (새창열림)

'Git' 카테고리의 다른 글

Git : rebase, merge, 그리고 stash  (0) 2023.09.09
원격 저장소와 Git 연동  (0) 2023.09.08
Git 기본 명령어  (0) 2023.09.07
Git에서 커밋된 메시지를 수정하는 방법  (0) 2023.08.12
Git 커밋 메시지 작성을 위한 7가지 규칙  (0) 2023.08.11
'Git' 카테고리의 다른 글
  • 원격 저장소와 Git 연동
  • Git 기본 명령어
  • Git에서 커밋된 메시지를 수정하는 방법
  • Git 커밋 메시지 작성을 위한 7가지 규칙
코샵
코샵
나의 코딩 일기장
    반응형
  • 코샵
    끄적끄적 코딩 공방
    코샵
    • 분류 전체보기 (725)
      • 스마트팜 (0)
      • 상품 추천 (223)
      • MongoDB (4)
      • 하드웨어 (17)
      • 일기장 (4)
      • 파이썬 (130)
        • Basic (41)
        • OpenCV (8)
        • Pandas (15)
        • PyQT (3)
        • SBC(Single Board Computer) (1)
        • 크롤링 (14)
        • Fast API (29)
        • Package (6)
      • Unity (138)
        • Tip (41)
        • Project (1)
        • Design Pattern (8)
        • Firebase (6)
        • Asset (2)
      • Linux (4)
      • C# (97)
        • Algorithm (11)
        • Window (7)
      • TypeScript (51)
        • CSS (10)
      • Git (11)
      • SQL (5)
      • Flutter (10)
        • Tip (1)
      • System (1)
      • BaekJoon (6)
      • Portfolio (2)
      • MacOS (1)
      • 유틸리티 (1)
      • 서비스 (6)
      • 자동화 (3)
      • Hobby (10)
        • 물생활 (10)
        • 식집사 (0)
  • 인기 글

  • 태그

    programmerlife
    unity
    cv2
    appdevelopment
    파이썬
    스크립트 실행
    ipcamera
    Python
    유니티
    rtsp
    C#
    codingcommunity
    devlife
    상품 리뷰 크롤링
    learntocode
    스크립트 실행 순서
    스마트스토어리뷰
    리스트
    codingtips
    셀레니움
    list
    programming101
    리뷰관리
    믈레코비타멸균우유
    카페24리뷰이관
    쇼핑몰리뷰
    긴유통기한우유
    카페24리뷰
    리뷰이관
    라떼우유
  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
코샵
Git : Branch & Merge
상단으로

티스토리툴바