[git] 풀 리퀘스트

..·2023년 4월 3일
0

Git

목록 보기
1/3
post-thumbnail

풀 리퀘스트 (Pull Request)

  • 원격 저장소가 내 변경사항을 pull 하도록 요청을 보내는 방식
  • push 권한을 주는 콜라보레이터와는 다르게 요청만을 보내는 것이기 때문에,
    owner가 검토 후 merge 할 수 있어서 관리하기에 용이하다.

1. 기여하려는 저장소를 본인 계정으로 포크하기

  • fork : 원격저장소를 내 계정으로 복사해오는 것.
  • 내가 owner가 아닌 저장소에는 push 권한이 없지만,
    내 계정으로 fork 해 온 복제 저장소에는 push 권한이 생기기 때문에 fork를 하는 것.

2. 포크한 저장소를 클론하기

  • 원본 저장소가 아닌 fork 해 온 저장소를 clone해야 함!
  • clone : 원격저장소의 모든 버전을 내 local로 복제하는 것.

3. 브랜치 생성 후 생성한 브랜치에서 작업하기

  • commit까지 완료하기.
  • checkout Branch : 브랜치를 이동하는 것.

4. 작업한 브랜치 푸시하기

  • main이 아닌, 생성한 브랜치를 push 해야함.
  • 여기까지 완료하면 버튼이 생성됨.

5. 풀 리퀘스트 보내기

  • 풀 리퀘스트를 날릴 때는 내가 어떤 작업을 했는지 먼저 확인하기

Commit Message

  • 중요한 의사소통 수단
  • 자세하게 작성할수록 좋음
  • 버전관리를 제대로 할 수 있음

Owner 입장에서의 pull request

  • files changed에서 어떤 작업을 했는지 우선적으로 확인
  • pull requests에서 댓글 다는 것도 가능하고 논의하는 것도 가능.
  • merge 과정에서 충돌(conflict) 발생 가능
  • 같은 내용을 다르게 수정했을 경우 충돌이 생김 (당황하지 말기)

충돌 발생 시 해결 방법

(merge, revert, stash 등 여러 상황에서 발생 가능)

1. 선별하기

  • 남기고 싶은 것 빼고 전부 지운다.

2. 다시 커밋하기


싱크 포크(Sync Fork)

  • 포크 이후에 쌓인 원본 저장소에 밀려있던 커밋들 로컬 환경으로 반영 가능

소스트리 vs 명령어

  • 소스트리는 보조도구이고, 명령어는 깃 그 자체.
  • 소스트리로 쉽게 사용 가능하지만 설치할 수 없는 환경에 대비하여 명령어를 익히자.
  • 소스트리로 한 번 기초를 배웠으면 그 후에는 명령어를 익혀서 사용하는 것을 추천.

0개의 댓글