[Git&Github] Git, Github 개념 & Git merge

홍예찬·2020년 9월 28일
0
post-thumbnail

What is Git? What is Github?

개발자라면 필수적으로 알아야 할 Git!
Git은 무엇이고 Github는 무엇일까요?
개발자들은 Git을 왜 알아야 하며 Git flow와 병합 방식에는 무엇이 있을까요?

Git이란?

Git은 로컬에서 관리되는 분산 버전 관리 시스템(VCS)으로 프로젝트 파일의 변경 사항을 추적하는 시스템입니다.
쉽게 얘기해서 수정된 소스코드에 대한 버전을 관리해주는 시스템이라고 보면 됩니다.

Github이란?

Github는 클라우드 방식으로 관리되는 분산 버전 관리 시스템인데,
이러한 버전 관리 시스템은 많은 사람들이 효율적으로 함께 작업하고, 프로젝트를 중심으로 협업할 때 유용합니다.
이를 통해 개발자들은 프로젝트의 변경 사항을 기록하고, 특정 시점의 버전으로 언제든 돌아갈 수 있습니다.
따라서 개발자라면 git, github을 필수적으로 다룰 줄 알아야 합니다!!

Git flow

Git flow는 다음과 같이 크게 5가지의 브랜치를 사용해서 운영을 하게됩니다.

  • master : 제품을 배포하는 브랜치
  • develop : 개발자들이 개별적으로 작업한 기능(feature 브랜치)들을 모두 합치는 브랜치.
  • feature : 단위 기능을 개발하는 브랜치. 모든 작업 이후 develop 브랜치에 합치게 됨.
  • release : master 브랜치로 보내기 전, 먼저 QA(품질검사)를 하기 위한 브랜치.
  • hotfix : master 브랜치에 배포를 한 상태에서 버그가 발생했을 때 긴급 수정을 위한 브랜치.

(참고: 가장 메인이 되는 브랜치는 master 브랜치와 dev브랜치입니다.)

Git 병합 방식 - Merge

Git Team Project 초기세팅

Git Conflict 해결


여기서 궁금한 점!
git pull origin master를 했음에도 굳이 feature 브랜치로 체크아웃 한 후에 git merge master를 하는 이유는 무엇일까요?
밑의 이미지를 보시면 알 수 있겠습니다.
Remote에서 git pull을 통해 받아오더라도 localrepo에만 저장될 뿐, 현재 작업하고 있는 working directory부분이 변경되진 않습니다. 따라서 git merge master를 하는 이유가 여기에 있습니다.

profile
내실 있는 프론트엔드 개발자가 되기 위해 오늘도 최선을 다하고 있습니다.

0개의 댓글