본문 바로가기
Git

[Git 깃] git push

by 까망 하르방 2021. 3. 13.
반응형

git push

원격 저장소 (Remote Repository)에 지금까지 Commit된 변경 내역을 반영해주는 명령어

 

특정 Branch 원격 저장소에 반영

git push {Remote Repository Name} {Your Branch Name}

 

로컬 master를 원격 저장소에 반영

$ git push origin master

※ "origin"은 보통 원격 저장소 이름이다.

    git은 저장소를 git clone하게 되면 원격 저장소의 이름을 origin이라고 자동으로 설정해놓습니다.

 

 

저장소와 브랜치 설정

git push -u {Remote Repository Name} {Your Branch Name}

▶ -u 옵션을 사용하여 push 하면 다음에는 굳이 저장소와 브랜치명을 입력하지 않아도 된다.

    단순히 "$ git push"만 수행하면 된다.

 

 

현재 Branch 기준으로 push 설정

git config --global push.default current

▶ 개발작업을 하다보면 Branch를 생성하고 해당 Branch로 checkout 하여 push 하는 경우가 많다.

    config 설정을 통해서 현재 Branch를 특정 원격 저장소에 반영되도록 할 수 있다.

    해당 설정을 통해서 각 Branch마다 -u 옵션을 할 필요가 없다.

 

원격 저장소에 Push 한 이후에는 더 이상 본인만의 코드가 아니게 된다.

누군가 pull 받아서 사용할 수 있기 때문에

중간에 변경 이력 (ex. Commit Hash)을 수정하면 충돌이 발생할 수 있다. 😱

 

정책에 따라서는 원격에 Merge 전에 코드리뷰를 위해서 Pull Request 과정을 거치는데

해당 단계까지는 마지못해 덮어쓰기로 작업하여도 큰 충돌은 없다.

즉, Push하고 원격 저장소에 Merge 되기전에 새로운 변경 내욕으로 덮어쓰는 것이다.

 

 

원격 저장소 강제 push

git push {Remote Repository Name} {Branch Name} -f

▶ (원격 저장소 내) 해당 브랜치 코드 변경 이력을 로컬 저장소의 코드 변경 이력으로 덮어씌운다.

 

 

📌 Git 목록

 

[까망] Git 목록

본 블로그에 작성된 Git 관련 내용 URL을 정리한 곳입니다. 목록 [Git] "git add -p" 를 활용하는 이유 [Git] .gitignore 설정 [Git] learngitbranching 답안 및 풀이 - 1 [Git] learngitbranching 답안 및 풀이 -..

zoosso.tistory.com

 

 

반응형

'Git' 카테고리의 다른 글

[Git 깃] git status  (0) 2021.03.13
[Git 깃] git stash  (0) 2021.03.13
[Git 깃] git log  (0) 2021.03.13
[Git 깃] git init  (0) 2021.03.13
[Git 깃] git commit  (0) 2021.03.13

댓글