728x90
반응형
질문 : 분기가 지정되지 않은 "git push"의 기본 동작
다음 명령을 사용하여 원격 지점으로 푸시합니다.
git push origin sandbox
내가 말하면
git push origin
다른 브랜치에서도 변경 사항을 푸시합니까, 아니면 현재 브랜치 만 업데이트합니까? master
, production
및 sandbox
세 가지 분기가 있습니다.
git push
문서는 이것에 대해 명확하지 않으므로 이것을 명확하게 설명하고 싶습니다.
git push
명령을 정확히 업데이트하는 분기 및 원격은 무엇입니까?
git push
git push origin
origin
은 원격입니다.
git push [remote] [branch]
가 해당 분기 만 원격으로 푸시한다는 것을 이해합니다.
답변
git 구성에서 push.default를 설정하여 기본 동작을 제어 할 수 있습니다. git-config (1) 문서에서 :
push.default
명령 줄에 refspec이 제공되지 않고 원격에 refspec이 구성되어 있지 않으며 명령 줄에 제공된 옵션에 의해 refspec이 암시되지 않는 경우 git push가 수행해야하는 작업을 정의합니다. 가능한 값은 다음과 같습니다.
nothing
: 아무것도 누르지 마십시오matching
: (Git 2.0 이전의 기본값) 일치하는 모든 분기 푸시 양쪽 끝에서 이름이 같은 모든 분기가 일치하는 것으로 간주됩니다.upstream
: 현재 분기를 업스트림 분기로 푸시 (tracking
은 업스트림의 사용되지 않는 동의어입니다)current
: 현재 분기를 같은 이름의 분기로 푸시simple
: (Git 1.7.11의 새로운 기능, Git 2.0 이후 기본값) 업스트림과 비슷하지만 업스트림 브랜치의 이름이 로컬 이름과 다른 경우 푸시를 거부합니다. 이것은 가장 안전한 옵션이며 초보자에게 적합합니다.
이것은 가장 안전한 옵션이며 초보자에게 적합합니다.
단순, 현재 및 업스트림 모드는 다른 분기를 아직 밀어 낼 준비가되지 않은 경우에도 작업을 마친 후 단일 분기를 밀어 내려는 사람들을위한 것입니다.
명령 줄 예 :
현재 구성을 보려면 :
git config --global push.default
새 구성을 설정하려면 :
git config --global push.default current
출처 : https://stackoverflow.com/questions/948354/default-behavior-of-git-push-without-a-branch-specified
728x90
반응형
'개발관련 > Git' 카테고리의 다른 글
초기 git 커밋을 되 돌리는 방법 (0) | 2021.10.20 |
---|---|
터미널에 Git 트리를 표시 할 수 없을 때 (0) | 2021.10.20 |
Git 브랜치의 가장 가까운 부모를 찾는 방법 (0) | 2021.10.19 |
변경 사항을 잃지 않고 마지막 푸시되지 않은 git 커밋을 해제하는 방법 (0) | 2021.10.19 |
마스터에서 Git 분기 업데이트 (0) | 2021.10.19 |