ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [초심자를 위한 git 사용법] git 원격 브랜치 가져오기
    Git&Github 2021. 5. 15. 21:50
    반응형

    git 원격 브랜치 가져오기


    소개

    • 페어 프로그램밍(공동 작업) 진행할 때, 페어(팀)의 브랜치를 가져오는 방법에 대한 글이다.
    • 페어 프로그래밍 개념은 여기 참고

    목차


    전제 조건

    상황 : A와 B는 페어 프로그래밍 팀

    • 두 사람은 A의 컴퓨터로 코드 작업을 하면서 A의 저장소에 모든 내역을 정리한다.
    • B는 A의 저장소에 있는 소스 코드와 커밋 내역을 자신의 저장소에 가져와야 한다.

    진행 절차

    1. A, B는 미션을 자신의 원격 저장소에 fork하기
    2. 각자의 로컬 저장소에 원격 저장소를 clone한 후에 작업 브랜치(e.g. step1) 생성
    3. A의 로컬 저장소에서 코드 작업을 진행
    4. A의 원격 정장소에 틈틈이 commit, push하기
    5. B는 A의 원격 저장소에 있는 소스코드와 작업내용을 자신의 로컬 저장소에 가져오기

    팀 브랜치 가져오기

    주의사항

    • 로컬 컴퓨터의 저장소까지 이동해서 git 명령어 실행
    • B의 입장에서 A의 원격 브랜치를 가져오는 작업

    1. 저장소 연결하기

    • git remote add : 내 로컬 컴퓨터와 원격 저장소를 연결
    • 페어(A)의 저장소를 나의 로컬컴퓨터와 연결함
    • {별칭}은 아무거나 사용 가능 ex) my team, my pair
    > git remote add {별칭} https://github.com/{팀_아이디}/{저장소_아이디}.git
    
    ex) 1번 예시
    git remote add pair https://github.com/{A 아이디}/{저장소 아이디}.git

    2. 나의 로컬에 등록된 저장소 확인하기

    • git remote : 새로 등록한 저장소 내역 확인하기
    • origin : 원격 저장소를 가리키는 일반적인 별칭
    ex) 1번 예시의 결과
    > git remote -v
        origin    https://github.com/{본인_아이디}/{저장소_아이디}.git (fetch)
        origin    https://github.com/{본인_아이디}/{저장소_아이디}.git (push)
        pair    https://github.com/{A_아이디}/{저장소_아이디}.git (fetch)
        pair    https://github.com/{A_아이디}/{저장소_아이디}.git (push)

    3. 브랜치 내역 가져오기

    • 페어(A)의 업데이트 된 브랜치를 가져오기
    • git fetch : 다른 사람의 branch의 내용을 확인하고 merge 하고 싶을때 fetch를 사용
    • 나의 로컬에 아직 새로운 변경사항을 합치진 않음
    > git fetch {별칭} {페어 브랜치_이름}
    
    ex) 페어(A)의 step 브랜치 내용을 업데이트하기
    git fetch pair Step1

    4. 팀 브랜치로 이동하기

    • 페어(A)의 브랜치로 이동하기
    • git checkout : 브랜치 이동하기
    > git checkout {별칭}/{브랜치_이름}
    
    ex) 페어(A)의 Step1 브랜치로 이동
    git checkout pair/Step1

    5. 나의 브랜치로 정보 보내기

    • 페어(A)의 브랜치에서 나의 브랜치로 정보 보내기
    > git push --force origin {본인 브랜치_이름}
    
    ex) 나의 브랜치 Step1으로 보내기 
    git push --force origin Step1

     

    여기까지 진행하면 B는 A의 원격 브랜치를 자신의 로컬 저장소로 가져올 수 있다. 😊

     

    이글은 아래의 내용과 박재성(Jason)님의 피드백을 참고하여 정리한 글입니다.

    반응형

    댓글

Designed by Tistory.