Meme's IT

[Git] Git merge, 그것이 알고싶다 본문

SSAFY/그것이 알고싶다(기획)

[Git] Git merge, 그것이 알고싶다

Memez 2023. 10. 31. 09:53

안녕하세요

 

싸피 10기는 이제 슬슬 1학기의 마지막인

관통 프로젝트가 다가오고 있습니다!

프로젝트의 꽃인 ⭐협업⭐을 하기 위해서

GIT은 선택이 아닌 필수!!

그런 GIT을 좀 더 유용하고 편하게 쓰기 위한 기능을 알아볼까요?

 


GIT을 이용하면서 자주 본 화면이죠,

저 화면에서 master는 무엇을 뜻하는 걸까요?

여기서 master는브랜치의 이름입니다.

 

 

 

# 브랜치(Branch)란?

작업 공간을 나누어 독립적으로 작업할 수 있도록 도와주는 Git의 도구입니다.

예를 들어, 여러 사람들이 같이 작업을 하다보면 같은 코드로 시작해도 서로 다른 버전의 코드가 생깁니다. 

그럴 때 아예 서로 다른 공간에서 작업을 할 수 있도록 도와주는 것이 브랜치입니다.

 

 

 

# 브랜치 사용해보기

1. 깃 초기화

 만약 이미 git이 켜져있는 폴더라면 생략해주세요

git init

 

2. 'first'라는 이름의 브랜치 생성

git branch first

fatal: not a valid object name: 'master' 라는 오류가 생긴다면

add와 commit까지 진행 후 다시 브랜치를 생성합니다.

 

현재 존재하는 브랜치를 확인하고 싶다면?

git branch

브랜치의 리스트를 알 수 있습니다.

여기서 master 앞에 *이 붙어 있는데, 이건 현재 나의 위치가 master에 있다는 것을 뜻합니다.

 

 

3. first 브랜치로 옮겨가기

git switch first

이후, 다시 git branch로 확인하면 first로 옮겨간 것을 확인할 수 있습니다.

이제 브랜치를 만들었으니, 독립적인 공간이 되나 확인해 볼까요?

현재 first에 있는 상태에서 폴더 안에

text파일을 하나 만들어주고 add, commit 까지 진행합니다.

그리고 다시 master로 다시 위치를 옮겨줍니다.

git switch master

이후 폴더를 확인하면 first에서 만들었던 text 파일이 사라진걸 확인할 수 있습니다.

물론 first 브랜치로 돌아오면 다시 확인할 수 있습니다.

 


그렇다면, 각자 브랜치를 만들어서 작업을 한 후,

어떻게 각 브랜치의 자료들을 합쳐 줄 수 있을까요?

→ 이때 사용하는 것이 merge입니다.

 

 

# merge

다른 브랜치의 진행사항 내용을 합쳐주는 일

merge를 하기 위해서는 꼭 합쳐지는 브랜치로 가야합니다.

 

아까의 text파일을 master 브랜치로 merge해볼까요?

git switch master

우선 합쳐질 위치가 master이므로 master 브랜치로 옮겨옵니다.

git merge first

first 브랜치 안에 있는 데이터를 가져오기 위해 다음과 같은 명령어를 사용합니다.

branch이름이 다르다면 git merge 브랜치명 의 형식으로 해주면 됩니다.

merge가 진행된다면, master 브랜치에서도 아까 first 브랜치에서 만들었던 text파일을 확인할 수 있습니다.

merge완료
다시 돌아옴

 

 

# 브랜치 삭제

다 쓴 브랜치는 다음의 명령어로 삭제를 할 수 있습니다.

git branch -d first

 


 

오늘은 GIT을 좀 더 협업에 맞기 사용하기 위해 브랜치를 알아봤습니다.

처음엔 어렵지만 쓰다보면 상당히 유용하니 많이 활용해보아요!

추가적인 기능은 공식문서를 통해 확인할 수 있습니다.

 

더 유용한 정보로 찾아오겠습니다~!

다음에 또 봐요🙌