[p-p] git hub 공통 repository: branch , pull , merge 충돌 해결하기

쉐런·2022년 10월 28일
0
post-thumbnail

현재 상태

각자 팀원들끼리 맡은 페이지들을 작업하고 github에서 pull하고 push하는 과정에서 많은 충돌과 오류로 저녁 시간도 계속 미뤄지고 뇌도 정지되는 느낌을 받았다.

6시 반부터는 계속 화면을 보고 집중해서 그런지 두통이 와서 집중을 더 할 수가 없었다.

다들 고장난 상태로 계속 오류를 해결하려고 해서 4명 다 열심히 노력하는 팀원들이라 다행스러우면서 힘들었다..

두통약 먹고 저녁밥먹으니 좀 나아져서 다시 작업에 들어갔다.

github pull, merge 충돌

각자 개인 파일에서 작업했기 때문에 github 공통 리파지토리의 main은 냅두고 branch를 새로 파서 각자의 branch에 작업물을 넣고 PR, merge를 해야했다.

  • github Flow는 이런 식으로 작업이 되는 걸로 정리했다.
    - pull로 땡겨서 다른 사람이 작업한 걸 갖고 와서 거기에 내 꺼를 작업하고 커밋
    • push 하기 전에 또 pull로 땡겨와서 또 충돌부분은 수정한 다음 Push

PULL → 작업 → Commit → Pull (이전 시간 동안 누가 작업했을 수 도 있으니 ) → Push

git flow

PULL → 작업 → Commit → Pull (이전 시간 동안 누가 작업했을 수 도 있으니 ) → Push

# branch 생성 및 이동
git switch -c feat
git switch feat

# pull로 dev 받아오기
git pull origin dev

# 현재 내가 있는 branch 확인 
git branch 

# 기능 구현 후 pull로 최신판 받았고 그 받은 파일을 commit

git status # 업데이트 된거 보임
git add "파일명" # staging
git status # 다시 확인
git commit -m "커밋명"
# 이전 시간동안 누가 작업했을수도있으니
git pull origin dev 
# 충돌 없애고 푸쉬
# 로컬 리파짓토리가 깃허브로 가면서 또 변경됨
git push -u origin feat
  • push 후에 Github 페이지가서 base: dev <- 개인리포지토리 로 Pull Request하고 잘 들어갔는지 확인 후 merge하기!

  • merge한 후에는 작업했던 브랜치 삭제 (다시 작업할땐 새로 파서 하기)
    + 브랜치가 많아지면 Pull로 땡겨올 때 엉뚱한걸 가지고 올 수 있기 때문에 작업 후 브랜치를 삭제하고 다시 파는 방법으로 함

git branch -d feat/todo

git branch 명령어

  • pull, push
# pull해오기
git pull origin branch명
# push하기 
git push origin branch명
  • branch 생성 및 이동
# pull해오기
git pull origin branch명
# push하기 
git push origin branch명
  • 기능 개발 후 커밋 , 개인 리포지토리로 푸쉬
# 기능 개발이 진행되었습니다.
# 커밋 하나 이상 해주기 
git commit -m "기능1의 세부 기능1"
git commit -m "기능1의 세부 기능2"
git commit -m "기능1 개발 완료"
# Github 리포지토리로 푸시합니다.
git push origin feat/todo
# Github에서 Pull Request를 합니다.
  • origin/dev해서 들어가면 그 브런치로 들어갈 수 있다.
git checkout -t origin/[브런치이름]
profile
How?

0개의 댓글