티스토리 뷰
난 비전공자라..이런 github 다루는 거에 익숙하지 않다...
그래서 gpt 통해서 정리해보았다..
1. 리포지토리 클론 및 작업 브랜치 생성
- 클론:
원격 리포지토리(GitHub)에서 로컬로 복사합니다.
git clone "git 주소"
cd "git clone한 경로로 이동"
- 새로운 브랜치 생성:
main 브랜치에서 작업할 별도의 브랜치를 만듭니다.
git checkout -b feature/my-changes
이렇게 하면 main 브랜치와 충돌 없이 독립적으로 작업할 수 있음 ㅎㅎ
2. 작업 및 커밋
- 코드 수정:
새 브랜치에서 원하는 기능이나 수정 사항을 반영합니다. - 커밋:
변경 사항을 스테이징하고 커밋합니다.
git add .
git commit -m "작업 내용에 대한 간단한 설명"
3. 원격 저장소의 최신 내용 반영
로컬 작업 도중 원격의 main 브랜치에 다른 기여자들이 변경한 내용이 추가될 수 있습니다. 이를 로컬 브랜치에 반영하는 두 가지 방법이 있습니다.
방법 A: Merge 방식
1. 원격 변경사항 가져오기
git fetch origin
2. 로컬 main 업데이트
git checkout main
git pull origin main
3. 작업 브랜치에 병합
git checkout feature/my-changes
git merge main
- 충돌 발생 시 수동으로 해결한 후 커밋합니다.
방법 B: Rebase 방식
- 원격 변경사항 가져오기
git fetch origin
2. 작업 브랜치에서 rebase 수행
git checkout feature/my-changes
git rebase origin/main
- rebase 중 충돌이 발생하면 수정 후 git rebase --continue 명령어로 진행합니다.
- rebase 후에는 원격에 강제 푸시가 필요할 수 있습니다.
git push --force-with-lease
4. 자신의 변경 내용을 알리는 방법
- 커밋 메시지
변경 사항마다 의미 있는 메시지를 남겨, 커밋 로그를 통해 작업 내역이 명확하게 드러나도록 합니다. - Pull Request (PR) 활용
작업한 브랜치를 원격 저장소에 푸시한 후, GitHub에서 main 브랜치로 병합하기 위한 PR을 생성합니다.- PR 설명란에 변경 내용과 수정 이유를 상세하게 작성합니다.
- 변경된 파일들의 diff가 자동으로 표시되어 다른 기여자들이 쉽게 리뷰할 수 있습니다.
- 커밋 히스토리 및 Diff 확인
git log --oneline
git diff HEAD~1 HEAD