Git에서 origin이라는 단어를 흔히 보게 됩니다. origin은 특별한 시스템 예약어가 아니라, "원격 저장소 URL에 붙인 기본 별명(Alias)"일 뿐입니다. 이 문서에서는 원격 주소 변경, 오픈소스 Fork 프로젝트에서의 upstream 연동 등 실무에서 반드시 마주치는 원격 관리 기법을 다룹니다.
1. 현재 연결된 원격 저장소 확인
# 연결된 원격 저장소의 별명과 실제 URL 확인
git remote -v
# 출력 예시
origin https://github.com/my-org/backend.git (fetch)
origin https://github.com/my-org/backend.git (push)2. 실무 시나리오 1: 회사의 저장소 주소나 도메인이 변경되었을 때
회사에서 저장소를 이전했거나 조직(Organization) 이름을 바꿨을 때, 기존 프로젝트를 새로 클론받지 않고 원격 주소만 간단히 교체할 수 있습니다.
# 기존 origin의 URL을 새 주소로 변경
git remote set-url origin https://github.com/new-org/backend.git
# 변경 결과 확인
git remote -v3. 실무 시나리오 2: 오픈소스 기여 또는 Fork 프로젝트 동기화 (upstream)
오픈소스나 원본 프로젝트를 내 계정으로 Fork하여 작업할 때는 두 개의 원격 저장소를 연결해야 합니다.
- origin: 내가 Fork해 온 내 개인 원격 저장소 (내가 푸시하고 PR을 올릴 대상)
- upstream: 원본 원격 저장소 (다른 개발자들의 최신 코드가 수시로 머지되는 원본)
# 1. 원본 저장소를 'upstream'이라는 별명으로 추가 등록
git remote add upstream https://github.com/original-creator/main-project.git
# 2. 리모트 목록 확인 (origin과 upstream이 모두 보여야 함)
git remote -v
# origin https://github.com/my-account/main-project.git (fetch/push)
# upstream https://github.com/original-creator/main-project.git (fetch/push)
# 3. 원본(upstream)의 최신 코드를 내 로컬로 가져와 동기화하기
git fetch upstream
git switch main
git merge upstream/main
# 4. 최신화된 내 main 브랜치를 내 원격(origin)에도 반영
git push origin main4. 원격 연결 삭제 및 이름 변경
# 잘못 연결한 원격 저장소 연결 해제
git remote remove <별명>
# 원격 저장소 별명 이름 변경 (예: staging-server -> staging)
git remote rename staging-server staging