개발자라면 필수적으로 알아야 할 Git!
Git은 무엇이고 Github는 무엇일까요?
개발자들은 Git을 왜 알아야 하며 Git flow와 병합 방식에는 무엇이 있을까요?
Git은 로컬에서 관리되는 분산 버전 관리 시스템(VCS)으로 프로젝트 파일의 변경 사항을 추적하는 시스템입니다.
쉽게 얘기해서 수정된 소스코드에 대한 버전을 관리해주는 시스템이라고 보면 됩니다.
Github는 클라우드 방식으로 관리되는 분산 버전 관리 시스템인데,
이러한 버전 관리 시스템은 많은 사람들이 효율적으로 함께 작업하고, 프로젝트를 중심으로 협업할 때 유용합니다.
이를 통해 개발자들은 프로젝트의 변경 사항을 기록하고, 특정 시점의 버전으로 언제든 돌아갈 수 있습니다.
따라서 개발자라면 git, github을 필수적으로 다룰 줄 알아야 합니다!!
Git flow는 다음과 같이 크게 5가지의 브랜치를 사용해서 운영을 하게됩니다.
(참고: 가장 메인이 되는 브랜치는 master 브랜치와 dev브랜치입니다.)
여기서 궁금한 점!
git pull origin master
를 했음에도 굳이 feature 브랜치로 체크아웃 한 후에 git merge master
를 하는 이유는 무엇일까요?
밑의 이미지를 보시면 알 수 있겠습니다.
Remote에서 git pull
을 통해 받아오더라도 localrepo에만 저장될 뿐, 현재 작업하고 있는 working directory부분이 변경되진 않습니다. 따라서 git merge master
를 하는 이유가 여기에 있습니다.