오늘은 깃허브 merge하는거 정리를 해봤습니다! (매번 헷갈려서 정리하기로함)
develp 브랜치에 티원들이 병합한 내용이 들어있고 이 내용을 user브랜치(내 브랜치)로 병합하여 로컬과 원격 저장소에 반영하는 과정을 정리했습니다.
1. 현재 작업 중인 내용 커밋
git add . git commit -m "작업한 내용을 커밋" |
2. 최신 develop 브랜치 가져오기 (develop이 아닌 main에 잘못올리셔서 오늘의 경우 main에서 가져옴)
git fetch origin git checkout develop develop git pull origin develop |
develop 브랜치의 최신 버전을 로컬에 업데이트
3. develop 브랜치의 내용을 user 브랜치에 병합 (나의 경우 main 브랜치를 user 브랜치에 병합)
git checkout user git merge develop |
4. 충돌 해결
충돌이 발생한 경우, 파일을 수동으로 수정하고 다음 명령을 실행하여 충돌을 해결합니다.
충돌 확인을 위해서 git status 를 사용
따로 충돌나는 부분은 없었고 db쪽에서 충돌이 발생해 이를 해결하는 과정을 거침
본인의 db파일을 사용하려면 git checkout --ours db.sqlite3 git add db.sqlite3 팀원의 db파일을 사용하려면 git checkout --theirs db.sqlite3 git add db.sqlite3 |
해당 코드중 팀원의 DB를 사용하는 것으로 하고 해결함.
5. 동작 확인
이후 정상적으로 동작하는지 확인하기 위해서 가상환경에 들어가서
pip install -r requirements.txt 를 실행 이후
python manage.py makemigrations 과 python manage.py migrate 을 통해 마이그래이션 진행
이후에 python manage.py runserver를 통해 서버 진행해주면 동작 완료
가끔 ./Scripts/activate 를 통해서 가상환경에 진입해도 실행이 안되는 경우가 발생한다. ( python 명령어 입력시 python이 존재하지 않음이라고 나옴)
이때는 deactivate 를 이용해 가상환경에서 나간다음 cd..로 전 폴더로 이동하고 이후 가상환경을 새로 생성해 주면 된다.
이후에는 cd myweb ./Scripts/activate 를 이용해 다시한번 가상환경에 진입해 주고 이후 pip install -r requirements.txt 을 진행해 주면 된다.
이후에도 동작이 잘 안되는 경우는 마이그레이션 문제일 수 있으니 위에와 같이 python manage.py makemigrations 과 python manage.py migrate 을 통해서 마이그래이션을 진행해주고 python manage.py runserver 를 해주면 된다.
이후 동작이 잘 되는지 test를 진행한 뒤 에 다시 user브랜치로 올리는 작업을 진행
올리기 전에는 항상 pip freeze > requirements.txt: 실행
가상환경에 설치된 패키지들의 목록을 업데이트할 때 이 명령어를 실행하는데, 이는 현재 환경에 설치된 패키지를 requirements.txt에 반영하는 작업이다.
보통은 변경 사항이 있을 때(새로운 패키지를 설치하거나 업데이트한 경우) 이 작업을 하지만 빠진 것들이 꽤 많아 pull과 push를 하기 전에 한번 씩 해주는 것이 매우 중요하다!
6. user브랜치로 올리기
이제 현재 브랜치가 어디있는지 확인하고 (나의 경우 user)
위 사진대로 git add . / git commit -m "" / git push 진행해주면 해당 내용이 제대로 올라간다.
'PYTHON-BACK' 카테고리의 다른 글
# 24.10.28_ 마켓컬리 클론코딩8_팝업부분 (3) | 2024.10.28 |
---|---|
# 24.10.28_ 마켓컬리 클론코딩8_최종 마무리 (3) | 2024.10.28 |
# 24.10.24_ 마켓컬리 클론코딩6_구글 OAuth 2.0 소셜 로그인 (0) | 2024.10.24 |
# 24.10.23_ 마켓컬리 클론코딩5_회원탈퇴 (2) | 2024.10.23 |
# 24.10.22_ 마켓컬리 클론코딩4_선물특가 타이머 (0) | 2024.10.22 |