본문 바로가기
iOS/Git

[Mac] Github - Pull request (PR) 순서

by 혜모리 2022. 11. 1.
728x90

이번엔 MacOS 환경에서 터미널 프로그램을 사용하여 Github에서 clone한 파일을 PR 까지 하는 과정을 아주 간략하게 설명하겠습니다.

갓 배우는 초보자이기 때문에 수정이 필요한 부분은 언제든 댓글 남겨주시면 감사하겠습니다.


주요 용어 간단 정리

  • 터미널 : 애플이 제공하는 단말 에뮬레이터로서 운영체제에 대한 텍스트 기반 접근을 제공
    • macOS 컴퓨터에는 자동으로 설치되어있는 프로그램입니다. windows의 cmd 같은 느낌
  • Repository : Git으로 관리하는 프로젝트 저장소
  • Branch : 나뭇가지. 분기. 여러 사람이 동시에 작업하기 위한 개념. 원본을 수정할 수 없으니 main을 복제 (협업 시 사용)
  • Fork : 다른 사람의 Github Repository에서 내가 수정하고 싶을때 해당 Repository를 나의 Repository로 복사해오는 기능
  • Clone : Github Repository에 있는 폴더를 내 컴퓨터에 연결 + 저장
  • Add : 로컬에서 반영한 내용을 Staging Area에 저장 (Staging Area에 대한 것은 이전 글 참고)
  • Commit : Staging Area에 저장된 수정사항을 Repository에 넘기고 버전 등록
  • Push : Repository에 등록된 Commit을 원격 저장소(remote repository = github)에 반영
  • Pull Request (PR) : push한 나의 branch를 원본에 반영해 달라고 요청하는 것
  • Merge : 수정한 Branch를 최종 Repository에 반영

준비물

Github 계정: 계정 토큰, 새로운 Repository 생성, 복제할 Branch 생성

- Github는 토큰 인증 로그인 방식이라 토큰을 발급받아 로컬에 인증해야만 연결됩니다.

- 원격 저장소와 로컬 저장소와 연결하기위한 토큰을 인증하지 않으면 push 할 때 갑자기 " Username for 'https://github.com ", " Password for 'https://github.com' " 아이디와 패스워드를 대라고 합니다... ;(

- 터미널에서 브랜치 만들기 : git branch {새로 만들 branch 이름}
- 브랜치 이동하기 : git switch {이동할 branch 이름}
- 브랜치 만들기 + 이동하기 : git checkout -b {새로 만들 branch 이름}


순서

[] = 수행 장소 | 명령어 | Enter 시 명령어 실행됨

 

1. [터미널]: cd 명령어를 사용하여 저장할 폴더 위치로 이동한다
ex. cd desktop 입력 + Enter

 

2. [Github]: clone할 repository 폴더로 이동

 

3. [터미널]: git clone {아래의 clone 저장소 URL} 복붙 -> Clone 완료

Code 버튼을 누르면 Clone 할 수 있는 레이어가 나옵니다.

-> 나의 branch만 clone하고 싶을 때는

git clone -b {branch_name} --single-branch {저장소 URL}

 

4. [터미널]: cd 명령어를 사용하여 clone한 폴더로 이동

 

5. [터미널]: git branch로 branch를 확인 (clone을 한 직후에는 main만 있을겁니다.)

 

6. [터미널]: git checkout -t origin/{가져올 branch명} -> branch 가져오기 및 선택 완료. git branch로 확인해보기

-> origin인 이유: 기본적으로 불러온 원격저장소의 별명이 origin이라서 그렇습니다.

 

7. [로컬]: 수정할 내용 뚝딱뚝딱 작업하기

 

8. [터미널]: git add . -> 수정한 파일 Staging Area에 저장 완료 뒤에 '.' 을 쓰면 수정한 모든 파일이고, git add {파일 혹은 폴더명}을 입력하면 해당 파일이나 폴더에서 작업된 것만 반영

 

9. [터미널]: git commit -m "{수정한 사항 간략하게 쓰기}" -> repository에 커밋과 메시지 저장완료

-> 큰 따옴표를 제대로 닫지 않으면 무한 dquote> 를 만나게 됩니다. 이럴 땐 [ " + Enter ] 입력하면 탈출할 수 있습니다.

-> git log로 커밋 됐는지 확인 가능합니다.

 

10. [터미널]: git push origin {push할 내 branch명} -> 원격 저장소에 push 완료

 

11. [Github]: push가 완료되면 자신의 repository > Pull request 상단에 [Compare & pull request] 버튼이 활성화됨, 클릭 후

PR할 repository와 branch를 잘 확인하고 글 내용을 작성 후 create하면 PR 완료!

 

12 [Github]: 원본 저장소의 관리자가 해당 글의 [Merge pull request] 버튼을 클릭 > [Confirm merge] 클릭하면 간단하게 Merge 완료!


명령어 예시

// 예시!
cd desktop 
git clone https://github.com/hyemory/someProject.git
cd desktop/someProject // 레포지토리명 'someProject'
git branch
git checkout -t origin/hyemory // 브랜치명 'hyemory'
git add .
git commit -m "20221101 수정요청사항 반영"
git push origin hymory

728x90
반응형

'iOS > Git' 카테고리의 다른 글

Git과 GitHub  (0) 2022.10.28

댓글