-
git clone시 git flow이해하기프론트엔드 개발자가 될거야./git 2022. 7. 10. 14:55
git에서 clone을 받아 내 local branch로 가져오는 실습을 진행했다.
git clone의 flow는 위처럼 구성되어 있다.
이 flow는 내가 취직을 하고 프로젝트를 할 때 실제 해야하는 과정이니 잘 공부해두어야한다.
git clone flow 정리
terminal에서 cd Desktop로 이동
-> git clone 주소
// 주소는 아래처럼 HTTPS 주소를 가져오면 된다.
// 이렇게 하면 해당 git에서 파일들을 가져올 수 있고 이 주소가 자연스레 Remote master가 된다.
-> cd 생성된 파일이름 // 주소를 clone하면 파일을 가져온다고 했다. 이제 그 생성된 파일로 이동하자.
-> 생성된 파일을 vsc에서 열고 잘 들어왔는지 확인
-> vsc terminal에서 마저 진행 // 그냥 맥 terminal해서 해도되는데 나는 이게 더 직관적이여서 이 방법을 선호한다!
-> git checkout -b 브랜치이름 // 브런치를 생성함과 동시에 생성한 브랜치로 바로 이동할 수 있다.
-> 코드 작업 후,
-> git add .
-> git commit -m "커밋 내용"
-> git push origin 브랜치이름
// 여기까지하면 일단 remote 마스터 아래에 나의 브랜치가 추가된다. 그 이후도 마저 보자.
-> PR 남기기 (Pull Request)
-> 문제 없으면 master에서 merge 진행
-> git pull origin master //pull로 merge된거 받아오면 된다.
만약, 팀 프로젝트를 처음 하는 상황이라면?
예를들어 팀 프로젝트를 세명이서 진행한다고 하자.
위의 git clone flow는 이미 만들어진 git에 파일이 다 올라가 있기 때문에 clone만 하면된다.
하지만 git에 올려져있는 파일도 없고 그래서 초기셋팅까지 해야한다면..?
사람1
npx create-react-app 파일이름 // CRA를 셋팅해주자.
-> 리액트 프로젝트를 할 수 있게 파일이 만들어졌으면 초기셋팅을 해주자.
초기셋팅이란? Router, Sass, 폴더구조, pretier 등 프로젝트에 필요한 A~Z까지 다 셋팅해줘야함을 뜻한다.
-> git add .
-> git commit -m “Add: initial settings complete”
-> git remote add origin 주소 // 프로젝트를 하는 git의 HTTPS 주소를 써서 연결해준다.
-> git push origin master
사람2, 사람3
git clone 주소 // 프로젝트를 하는 git의 HTTPS 주소를 써서 사람1이 초기셋팅한 파일을 다운받자.
-> npm i // node.modules를 받기위해 꼭 필요한 과정이다! 이렇게 해야 사람1이 초기셋팅에서 다운받은 library들도 다운받아진다.
-> git checkout -b 브랜치이름
// 다운받았으니 내 local에서 branch를 만들어서 이동하여 작업하자.
// Remote master든 local master든 master는 조심해줘야 하니까..!
-> 각자 작업 진행
-> 각자 ' git add . -> git commit -m “커밋 내용” -> git push origin 자신의브랜치 ' 의 순으로 푸쉬해주면 된다.
-> 다른 사람이 푸쉬한 것도 합쳐줘야한다. 일단 내 local의 master로 이동하자.
-> git checkout master
-> 내 local의 master에서 : git pull origin master
-> git checkout 내 브랜치
-> 내 브랜치에서 : git merge master // 내 local mater에서 pull 받았으니까 내 local master에서 가져오면 된다.
팀 프로젝트를 할 때 주의사항
이렇게 팀 프로젝트를 할 때 주의할 사항이 있다.
이렇게 하지 않으면 너무 정신없고 꼬이기 때문에 꼭 주의하자!
1. 기능 단위의 브랜치를 생성할 것 ex) 로그인 브랜치 / 메인 브랜치
2. 작은 단위로 merge 반복하기 //너무 커지면 오래 걸림
3. 항상 마스터에 가서 브랜치 생성하기
만약 conflict 가 발생했다면 이렇게 해결하자.
git checkout master // 내 local master로 이동
-> git pull origin master //상대방 merge된 내용이 들어옴
-> git checkout 내 브랜치 // // 다시 내 branch 로 이동
-> git merge master //상대방꺼랑 합침
-> conflict된 부분 수정 후 저장
-> git add .
-> git commit -m “Fix : conflict 해결”
-> git push origin 내 브랜치
git branch 명령어 정리
git branch 명령어를 알아야 위의 모든 과정을 수행할 수 있다.
git branch 브랜치이름 //새로운 브랜치 생성
git checkout 브랜치이름 // 다른 브랜치로 이동
git checkout -b 브랜치이름 // 새로운 브랜치를 생성함과 동시에 바로 이동
git branch // 프로젝트에 존재하는 모든 브랜치 확인
git merge 브랜치이름 //A브랜치에서 B브랜치에 적용하고 싶을 때 + 새로운 기능을 완벽 구현하고 테스트까지 완료했을 땐 master브랜치와 병합!
git branch -d 브랜치이름 //해당 브랜치 삭제
'프론트엔드 개발자가 될거야. > git' 카테고리의 다른 글
git rebase (0) 2022.08.14 Git 명령어 정리 (0) 2022.06.13