본문 바로가기

Coding/내일배움캠프

[내일배움캠프] 원격 repository의 특정 branch에 push하는 방법 - Node.js 4기 TIL | Day 42 | 24.02.13.(화)

1. 작업 전 확인 사항

  1. 로컬 리포지토리 연동: 원격 리포지토리 clone 및 로컬 리포지토리 연동 완료
  2. 브랜치 생성: 작업할 브랜치 생성 (기존 브랜치 존재 시 해당 브랜치 체크아웃)
  3. 코드 수정: 원하는 부분만 수정
  4. 테스트 실행: 수정된 코드 테스트 통과 여부 확인

2. push 단계

2.1. Remote 설정 확인 및 변경

  1. git remote -v 실행: 현재 설정된 remote 정보 확인
  2. origin remote가 원격 리포지토리 URL과 일치하는지 확인
    • 일치하지 않을 경우 git remote set-url origin <원격 리포지토리 URL> 실행하여 변경

2.2. 특정 브랜치에 push

  1. git add . 실행: push할 파일 스테이징
  2. git commit -m "커밋 메시지" 실행: 변경 사항 커밋
  3. git push origin <브랜치 이름> 실행: 로컬 브랜치 변경 사항 원격 리포지토리 특정 브랜치에 push

2.3. 추가 팁

  • -u 옵션 사용: 반복적인 push 명령어 간소화
    • git push -u origin <브랜치 이름>: 첫 push 시 설정, 이후 git push만으로도 가능
  • git push --force 사용: 힘든 push (주의!)
    • 로컬 브랜치가 원격 브랜치보다 앞선 경우 사용
    • 데이터 손실 가능성 존재, 충돌 해결 필요
  • git log 사용: push 이력 확인

3. 예시

# 1. Remote 설정 확인 및 변경

$ git remote -v
origin  https://github.com/my-username/my-project.git

# 'origin' remote가 원격 리포지토리 URL과 일치하지 않을 경우

$ git remote set-url origin https://github.com/team-name/team-project.git

# 2. 특정 브랜치에 push

$ git add .
$ git commit -m "Added new feature"
$ git push origin feature-branch

# 3. 추가 팁

# '-u' 옵션 사용

$ git push -u origin feature-branch

# 'git push --force' 사용 (주의!)

$ git push --force origin feature-branch

4. 주의 사항

  • conflict 발생 가능성: 원격 브랜치와 로컬 브랜치 충돌 시 해결 필요
  • push 권한 확인: 원격 브랜치에 push 권한이 있는지 확인
  • force push 주의: git push --force는 데이터 손실 가능성이 있으므로 주의해서 사용

* 해당 게시글은 gemini를 참고하여 작성된 게시글임을 알립니다.