-
Notifications
You must be signed in to change notification settings - Fork 6
Open
Labels
문서 및 폴더 정리Improvements or additions to documentationImprovements or additions to documentation
Description
문제 상황
PR 시 이전 것을 close 하지 않으면 이후 PR이 꼬여버리거나
코드리뷰를 원치 않는 commit을 관리하기가 번거롭다.
해결 방법
원본 repository를 fork를 떠서 각자 개별적으로 관리한 뒤
코드리뷰를 원하는 코드만 별도로 PR을 올린다.
Fork?
clone과 유사해보이지만, 용도가 다릅니다.
clone는 기존 저장소의 소스코드 및 git 이력을 복사하는 데 그치기에
이후 다른 사람들끼리 원본 저장소에 기여하려면 다시 pull을 해야 push할 수 있습니다.
fork는 원본 저장소를 가져오면서 원본 저장소와의 연결이 존재합니다.
사본 저장소(forked repo)에서 작업한 뒤 원본 저장소로 기여하려면 PR을 올리고
pending 상태로 둔 다음에 원하는 부분을 쉽게 조정할 수 있다는 점에서 다릅니다.
STEP 1. Fork
자신의 repository로 fork 합니다.
본인이 작업하는 IDE에 clone합니다.
STEP 2. Commit
열심히 알고리즘을 풀고 commit할 준비를 합니다.
commit 전 원격 저장소를 update합니다.
$ git remote remove origin
$ git remote add origin {fork한 레포지토리}평소하던대로 commit 합니다.
STEP 3. PR
원본 repository로 PR하는 방법은 여러 가지가 있는데, 편한 방법을 택하시면 됩니다.
- commit 내역 클릭
또는 - Pull requests>New Pull Request 버튼 클릭
다음 캡쳐에서 나온 것처럼 컨벤션을 지키며 메시지를 작성하시면 됩니다.
PR 컨벤션
[CR] N월 N주차
PR 메시지에 포함되어야 할 것
- 문제 번호
- 리뷰어에게 하고 싶은 말(선택)
STEP 4. Code Review
Code Review
STEP 5. Merge
Reviewer에게 Approve를 받았으면, 해당 코드리뷰를 확인한 다음,
Merge Pull Request를 클릭하시면 됩니다.
예상 문제 상황
- 원치 않은 commit을 PR에 올렸을 때
<commit 수정 방법>
- 커밋 내역 확인하기
$ git log --oneline -{보고 싶은 커밋 수}
ex.
git log --oneline -3- 되돌리고 싶은 커밋 개수만큼 reset시키기
(혹시 모르니 다시 올리고 싶은 파일은 복사해서 임시 저장 해주세요)
$ git reset --hard HEAD~{원하는 개수}
ex.
git reset --hard HEAD~3- Merge conflict가 났을 때
(작성 예정입니다.)
혹시나 읽다가 모르시겠으면 꼭 알려주세요!
seogudwns, s0n9h2 and Malza0408
Metadata
Metadata
Labels
문서 및 폴더 정리Improvements or additions to documentationImprovements or additions to documentation

















