GitHub로 원격 저장소 관리하기: Push, Pull, Fetch 기본 사용법

GitHub로 원격 저장소 관리하기: Push, Pull, Fetch 기본 사용법

Git에서 프로젝트 관리의 핵심은 원격 저장소와의 상호 작용에 있습니다. 이 글에서는 GitHub를 기준으로 원격 저장소를 추가, 조회, 변경, 삭제하는 방법과 git push, git pull, git fetch 명령어의 사용법에 대해 알아보겠습니다.

원격 저장소 추가하기

처음으로 GitHub에 프로젝트를 업로드하려면 원격 저장소를 추가해야 합니다.

git remote add origin https://github.com/username/repository.git

여기서 origin은 원격 저장소의 단축 이름이고, 뒤의 URL은 GitHub 프로젝트 페이지에서 제공됩니다.

원격 저장소 조회하기

설정된 원격 저장소를 확인하려면 다음 명령어를 사용합니다.

git remote -v

이 명령어는 원격 저장소의 URL과 함께 fetch와 push용으로 설정된 원격 저장소를 보여줍니다.

원격 저장소 변경 및 삭제하기

원격 저장소의 URL을 변경하려면 아래 명령어를 사용합니다.

git remote set-url origin new_url

원격 저장소를 삭제하려면 아래 명령어를 사용합니다.

git remote remove origin

git push 사용법

로컬에서 작업한 커밋을 GitHub에 업로드하려면 git push 명령어를 사용합니다.

git push origin master

이 명령어는 master 브랜치의 변경 사항을 원격 저장소인 origin에 업로드합니다.

git pull 사용법

GitHub의 변경 사항을 로컬로 가져오려면 git pull 명령어를 사용합니다.

git pull origin master

이 명령어는 원격 저장소의 최신 변경 사항을 현재 로컬 브랜치로 병합합니다.

git fetch 사용법

git fetch 명령어는 원격 저장소의 최신 변경 사항을 로컬에 가져오지만 병합하지는 않습니다.

git fetch origin

변경 사항을 로컬 브랜치와 병합하려면, 가져온 변경 사항을 기준으로 git merge를 실행해야 합니다.

예시

GitHub 원격 저장소 사용 예시
# 아래 명령어는 현재 로컬 저장소에 origin이라는 이름으로 새 원격 저장소를 추가합니다.
PS C:\blueshare\Git> git remote add origin https://github.com/BlueShareHub/Git_Test.git

# 아래 명령은 master 브랜치의 모든 커밋을 GitHub의 origin 원격 저장소에 업로드합니다. -u 옵션은 추후에 이 브랜치를 기본값으로 설정하여 git push 또는 git pull 명령을 간소화합니다. 이 옵션을 사용하면, 향후 해당 브랜치와 관련된 명령어를 입력할 때 원격 저장소 이름과 브랜치명을 생략할 수 있습니다.
PS C:\blueshare\Git> git push -u origin master

이제 https://github.com/BlueShareHub/Git_Test 주소로 가면, a.html, b.html, 그리고 feature.html 파일이 포함된 커밋을 원격 저장소에서 볼 수 있습니다.

Github 원격 저장소에서 커밋된 파일을 확인 할 수 있습니다.

만약 프로젝트에 다른 기여자가 있다면, 그들의 변경 사항을 로컬에 반영하기 위해 다음과 같은 명령어를 사용할 수 있습니다.

# GitHub 원격 저장소의 변경 사항을 현재 로컬 브랜치로 가져오고 싶을 때
PS C:\blueshare\Git> git pull origin master

# 원격 저장소의 변경 사항을 로컬로 가져오되 병합하지 않으려면
PS C:\blueshare\Git> git fetch origin

# fetch 이후, 필요한 경우 가져온 변경 사항을 현재 작업 중인 브랜치와 병합할 수 있습니다.
PS C:\blueshare\Git> git merge origin/master

이 과정을 통해, 원격 저장소의 최신 변경 사항을 정기적으로 로컬에 반영하여 프로젝트의 동기화 상태를 유지할 수 있습니다. 이렇게 함으로써 팀원 간의 충돌을 최소화하고, 프로젝트의 안정성을 높일 수 있습니다.

결론

GitHub와 같은 원격 저장소를 사용하는 것은 개발 프로세스에서 중요한 부분입니다. 원격 저장소를 통해 개발자들은 코드를 공유하고, 협업하며, 프로젝트의 버전을 관리할 수 있습니다. git push, git pull, git fetch와 같은 명령어를 통해 원격 저장소와의 원활한 상호 작용을 할 수 있으며, 이를 통해 프로젝트의 안정성과 협업 효율성을 높일 수 있습니다.

관련 이전 게시글

이 글이 도움이 되셨다면 공유 부탁 드립니다.

위로 스크롤