스파르타 (React_6기) 본캠프

2024. 07. 30.(Git 기초특강 2)

cha123hein 2024. 7. 30. 20:21

1. 브랜치

: 브랜치는 기존 데이터를 그대로 두고 수정한 데이터를 새로 저장하는 걸 말한다.

git. branch (브랜치 이름)

-> 생성되었는지는 git. branch를 검색하면 기존 파일과, 브랜치로 복사한 파일이 나온다.

*q키로 빠져나올 수 있다.

 

그렇다면 새로 생성한 브랜치로 이동을 하려면 

브랜치 이동명령어 : 

git swich (브랜치이름)
or
git checkout (브랜치이름)

둘 중 하나를 쓰면 된다.

 

브랜치를 만들고 바로 이동을 하려면

git swich -c (브랜치이름)
or
git checkout -b (브랜치이름)

을 치면 된다.

 

*새로 생성한 브랜치에 수정된 사항을 저장하면 당연히 기존에 있던 파일인 main에는 저장이 되지않는다.

협업을 위해서 다시 main으로 저장을 해야하는데,

git switch(main)
을 쳐서 이동한 다음
git merge (저장한 브랜치명)
을 치면 두 파일이 합쳐진다.

 

2.  Pull Requests : pull(당겨서 합치는 것)+request(요청하다)

내 local에 합치게 되면 협업하는데 바로 확인이 불가해 불편하고, 보안문제등 여러 문제가 있어 

따로 main으로 굳이 합치지않고 github로 올린다.

 

git push origin (브랜치명)을 친 후
git hub 사이트에서 저장을 하면된다.(merge)

-> git pull orign main을 하면 내 로컬에도 반영이 된다.

 

1) 브랜치 생성 및 이동

2) 기능 개발 및 코드 저장

3) 코드 업로드 및 pull request생성

4) github에서 merge

5) 내 로컬에도 반영

 

3. 생길 수 있는 문제점

 

문제점 1) main에 합칠 때 배포용이다보니 완벽하게 기능 개발을 해야 merge가 가능하다.

-> 다 만드는데 오랜 시간도 걸리는데에다, 다 만든 후 어디에 버그가 있었는지 알 수가 없어 버그수정에 오래걸린다.

해결책1) 개발용 브랜치를 따로 만들어둬 바로 main에 저장하지않고 개별용(developd용)브랜치에 저장을 한 다음 다 만든 후 main에 저장한다.

 

문제점 2) 그냥 합치는건 위험하다.

-> 충돌이 생길 수도 있기 때문

해결책 2)내 로컬에서 먼저 테스트를 한다.

-> pull로 당긴 후 내 컴퓨터에 먼저 충돌 수정을 하고 합친다.