안녕하세요 성조입니다.
Github에서 Pull Request를 몇 번 해봤지만 정확하게 하는 방법을 기록하고, 정리하지 않아서 금방 다시 검색해서 찾게 되는 경우가 많았습니다. 그래서 작업한 내용을 기록하고 정리하려 합니다.
이번 포스팅에서 OS는 windows 환경에서 IDE는 vscode 환경을 기준으로 작성됐습니다.
GitHub 계정에 로그인한다.
로그인은 간단할 수 있으나 fork를 받아야 하므로 미리 로그인해 놓을 수 있도록 한다.
GitHub에서 Pull Request 하려는 Repository로 이동한다.
Pull Request 하려는 Repository로 간다.
빨간 박스 영역의 Fork를 눌러준다.
저장소 이름을 설정하고 Create fork를 눌러서 저장소를 생성한다.
Clone 받기
https 아래에 빨간 박스로 된 코드를 활용하여 터미널 창에서 수정하는 방법이 있다.
하지만 본인은 vscode에서 제공하는 clone 을 사용할 것이다.
Git:Clone을 들어간다.
제공된 https 코드를 활용하지 않고 본인은 fork 받아놓은 github 파일에 접속해서 todo-study repository를 내려받고, 폴더를 열어준다.
이렇게 했을 때는 본인의 Repository에 파일을 이동했을 뿐이다.
어디에 존재하는지 모르는 원본 저장소를 지정해야 한다.
원본이 존재하는 저장소로 원격 주소 지정하기
터미널에서 저장소를 지정해야 한다.
현재 어디를 저장소로 두고 있는지 git remote -v를 검색해서 확인할 수 있다.
git remote -v
원본 저장소 연결하기
git remote add (이름) (원본 저장소의 url 주소)
[본인]
git remote add root https://github.com/rukeni/todo-study.git
위와 같이 원본 저장소와 연결해 준다.
터미널을 활용해서 브랜치를 추가한다.
브랜치 추가방법
git branch (브랜치로 사용할 이름)
[예시] git branch ssj
git branch 명령어를 통해서 브랜치를 생성했다.
브랜치 이동 방법
git checkout (브랜치 이름)
[예시] git checkout ssj
이후 git checkout 명령어를 통해서 ssj 브랜치로 이동했다.
저장소 브랜치 목록 확인 방법
git branch
명령어 창에 git branch를 입력한다.
Merge 할 소스 코드 수정하기
본인은 vscode 환경에서 진행했으므로 Source Control을 활용해서 커밋 하는 방법과 터미널을 활용해서 작성하는 방법을 예시로 든다.
커밋에 사용될 Message를 작성하여 하단의 Commit 버튼을 누르고 Push를 누른다.
IDE에서 제공해 주는 터미널을 통하여 GitHub에 값을 넘겨줄 예정이라면 하단 터미널에 add, commit, push를 통해서 작성하는 방법도 존재한다.
다양한 방법이 있지만 본인은 위 두 가지 방법이 windows 환경에서 작업할 때 편리하게 사용했으므로 위 두 가지를 선택했다.
Pull Request 보내기
fork 받은 Repo로 돌아간다.
Compare & pull request을 누른다.
누르면 다음과 같은 화면으로 진행된다.
제목과 내용을 제대로 명시하여 Crate pull request를 보낸다.
원본 저장소 관리자의 허락 받기
원본 저장소를 관리할 수 있는 관리자에게 코드 리뷰를 받고 Merge를 위한 Pull Request 허락 받아야 한다.
본인의 경우 Merge 보류로 다시 작성하는 것으로 얘기 됐기 때문에 다음과 같이 나타났다.
관리자 승인 이후 Merge 동기화하기와 브랜치 삭제하기
Merge가 승인된 경우 다음의 코드를 통해서 브랜치 동기화와 삭제를 진행한다.
# 코드 동기화
git pull (remote 별명)
[예시]
git pull root
# 브랜치 삭제
git branch -d (지정했던 브랜치 이름)
[예시] git branch -d ssj
vscode의 경우 위에서 자주 언급됐던 것 처럼 터미널에 위 코드들을 작성하여 진행하면 된다.
순서는 다음과 같다.
1) 코드 동기화
2) 브랜치 삭제
두 과정을 통하여 수정된 소스 코드를 원본 저장소로 동기화한다.
브랜치는 코드 활용 후 삭제하며, 다음 코드를 진행하는 경우.
브랜치 생성하기부터 관리자 승인 이후 Merge 동기화하기와 브랜치 삭제까지 진행해 주면 된다.
부족한 포스팅 읽어주셔서 감사드립니다.
다음 포스팅 때 뵙겠습니다!
'Git & GitHub' 카테고리의 다른 글
[Git & GitHub] .gitignore 사용법과 gitignore.io 활용하기 (0) | 2022.11.25 |
---|---|
[GitHub] 협업에 유용한 Discussion 사용하기 (0) | 2022.08.15 |
[Git] Git설치, Vscode 설치와 Github연동까지 (0) | 2022.07.13 |
[개인 학습] 깃(Git)이란? (0) | 2022.03.31 |