2024. 7. 1. 22:25ㆍGit&Github
안녕하세요. 진득코딩입니다. 이번 시간에는 지난 시간에 이어 git과 뗄 수 없는 GitHub에 대해서 알아보도록 하겠습니다. 또한 병렬 관리를 도와주는 브랜치에 대해서도 함께 알아보도록 하겠습니다.
local과 GitHub 연결하기

먼저 local과 github를 연결하기 위해서 github에 repository를 만들어줍니다. repository name에 원하시는 repository의 이름을 작성하고 public으로 설정한 후 Add a README file은 체크하지 않고 생성해줍니다.

Add a README filel을 체크하지 않으면 repository에서 위와 같은 명령어 묶음을 보실 수 있습니다. 해당 명령어들을 한 번에 git bash에 입력하게 되면 따로 clone하지 않아도 바로 원격저장소와 연결하실 수 있습니다.

원격 저장소와 연결할 때 많이 사용하는 명령어들입니다. git fetch는 원격저장소에서의 변경 사항만 가져오는 명령어입니다. git pull은 git fetch와 git merge를 합친 명령어로 원격저장소에 있는 변경 사항을 가져오고 병합까지 하게 됩니다. git clone으로는 원격저장소와 local을 연결할 수 있습니다.
branch 활용하기

위와 같이 메인을 기준으로 한 사람씩 pull하고 push한다면 순차적으로 commit 노드가 생기면서 conflict가 생길 일이 없습니다. 하지만 협업을 하다보면 순차적으로 push와 pull을 하기 힘들기 때문에 아래와 같은 상황이 연출될 수 있습니다.


많은 사람들이 한 번에 작업하다가 push와 pull 주기가 꼬이게 되어서 conflict 나게 되면 굉장히 힘들어집니다. 고치는데 시간도 많이 걸리고 해당 문제를 해결하는데 굉장히 많은 시간을 소요하게 됩니다. 그래서 여러 branch를 사용하여 병렬 작업을 하게 되면 이러한 문제점을 해결할 수 있습니다.
여러 branch 활용하기

위와 같이 본인의 branch에 push와 pull하고 메인에 merge하는 형식으로 하게 되면 문제가 발생해도 본인의 branch만 고치면 되기 때문에 좀 더 효율적으로 협업을 진행할 수 있습니다.

또한 main 브랜치와 develop 브랜치를 분리하여 수정이 필요한 작업은 develop에서 진행하여 수정 중에도 정상 서비스를 제공할 수 있는 기능도 가지고 있습니다.
branch 관련 명령어

git switch는 최근에 생긴 명령어로 git checkout과 같은 기능을 제공합니다. 하지만 git checkout이 많은 기능을 담당하여 불편한 면을 개선하기 위하여 git switch를 만들었기 때문에 switch 기능만 가지고 있는 git switch를 사용하는 것을 권장합니다. 또한 git diff는 브랜치 이름과 파일 이름을 동일하게 지으면 git bash가 혼란스러워 할 수 있기 때문에 애초에 파일명을 지을때 브랜치와 다른 이름으로 짓는 것을 추천합니다.

branch 생성과 삭제를 하는 명령어들입니다. 해당 명령어에서 TestBranch는 원하시는 브랜치 이름으로 지으시면 됩니다. 또한 git branch -d TestBranch를 사용하였는데 삭제가 안된다면 더욱 강력한 명령어를 사용할 수 있습니다. 해당 강력한 삭제 명령어는 d를 D로 바꾼 git branch -D TestBranch를 사용해주시면 됩니다.
이번 시간에는 원격 저장소인 github와 branch에 대해서 살펴보았습니다. 이번 포스팅에서 다룬 내용들은 협업에서 중요한 내용들이기 때문에 협업이 필요하신 분들은 해당 포스팅으로 좋은 협업하시길 바라겠습니다. 이번 시간은 여기까지입니다. 끝까지 봐주셔서 감사합니다!😀
'Git&Github' 카테고리의 다른 글
[GitHub] Visual Studio에 깃허브를 연결하여 사용해보자 (0) | 2024.07.04 |
---|---|
[Git&GitHub] GitHub의 기능들을 살펴보자 (2) | 2024.07.02 |
[Git&GitHub] conflict와 잘못된 commit을 해결해보자 (0) | 2024.07.02 |
[Git&GitHub] Git에 대해 알아보자 (0) | 2024.07.01 |