힘내-현재 분기 바로 가기를 밀어
Git에게 현재 추적 분기를 원점으로 푸시하도록 지시하는 지름길이 있습니까?
참고 : 기본 푸시 동작을 변경할 수 있다는 것을 알고 있지만 기본 동작을 변경하지 않는 임시 솔루션을 찾고 있습니다.
예를 들어 feature/123-sandbox-tests
내가 사용하려는 지점에 있다고 가정 합니다.
git push origin feature/123-sandbox-tests
지루합니다. 바로 가기를 찾고 있습니다.
git push origin current
여기서 git은 current가입니다 feature/123-sandbox-tests
.
편집 : 버전 2.0부터 git의 기본 동작 이보다 직관적 인 동작으로 변경되었습니다. 자세한 내용은 이 SO 질문 을 참조하십시오.
편집 2 : ceztko의 답변 은 설정에 관계없이 현재 분기를 푸시 할 수 있으므로 가장 좋은 답변입니다.
git push
설명서 에 따르면 :
git push origin HEAD
A handy way to push the current branch to the same name on the remote.
그래서 당신이 필요로 생각합니다 git push origin HEAD
. 또한 git push -u origin HEAD
원점으로 아직 푸시하지 않은 경우 로컬 지점에서 업스트림 추적 정보를 설정하는 것이 유용 할 수 있습니다 .
다음 명령을 사용하여 현재 분기로 푸시 하도록 git 을 구성 할 수 있습니다
git config --global push.default current
그럼 그냥
git push
코드를 현재 브랜치로 푸시합니다.
분기가 지정되지 않은 "git push"의 기본 동작 에서 비슷한 질문을 살펴 봐야 합니다.
기본적으로 현재 브랜치를 실행하도록 기본 동작을 설정하는 방법에 대해 설명합니다 git push
. 아마도 당신이 필요한 것은 :
git config --global push.default current
다른 옵션:
- 아무것도 : 아무것도 밀지 마십시오
- 매칭 : 일치하는 모든 분기를 푸시
- 업스트림 / 트래킹 : 현재 브랜치를 트래킹중인 대상으로 푸시
- 현재 : 현재 분기를 밀어
git 1.7.x를 사용하는 경우 다음 명령을 실행하여 원격 추적 분기를 설정할 수 있습니다.
git branch --set-upstream feature/123-sandbox-tests origin/feature/123-sandbox-tests
그런 다음 간단히 git push
모든 변경 사항을 적용 할 수 있습니다 . 더 완전한 답변을 보려면 여기에서 비슷한 질문에 대한 허용 된 답변을 참조 하십시오.
push 명령을 사용하여 현재 분기 만 푸시하려는 경우 푸시 동작을 업스트림으로 변경할 수 있습니다.
git config --global push.default upstream
.bashrc 설정에서 이러한 별칭을 사용합니다.
alias gpb='git push origin `git rev-parse --abbrev-ref HEAD`'
명령 $gpb
에서 현재 분기 이름을 가져 와서 원점으로 푸시합니다.
다른 별명은 다음과 같습니다.
alias gst='git status'
alias gbr='git branch'
alias gca='git commit -am'
alias gco='git checkout'
가장 간단한 방법 : git push -u origin feature/123-sandbox-tests
한 번 실행하십시오 . 이를 통해 지점을 사용하는 방식이 향상되고 로컬 구성에서 업스트림 추적 정보가 설정됩니다. 그런 다음 git push
추적 된 분기를 업스트림 리모컨으로 푸시 할 수 있습니다 .
branch.<branch name>.merge
원격 브랜치 이름 (경우에 따라 로컬 이름과 동일)으로 설정하고 선택적 branch.<branch name>.remote
으로 푸시하려는 원격의 이름 (기본값은 원점) 으로 설정하여 구성에서 직접 수행 할 수도 있습니다. 구성을 살펴보면에 대한 집합 중 하나 일 가능성이 높으므로 master
해당 예를 따를 수 있습니다.
마지막으로 push.default
설정 을 고려해야합니다 . 기본값은 "일치"로, 바람직하지 않은 결과를 초래할 수 있습니다. 내가 아는 대부분의 사람들은 "업스트림"이 더 직관적이라고 생각합니다.
각 설정에 대한 자세한 내용은 git-config 매뉴얼 페이지를 참조하십시오 .
두번째 생각, 질문을 다시는 독서에, 나는 당신이이 모든 것을 알고 있다고 생각. 나는 당신이 실제로 찾고있는 것이 존재하지 않는다고 생각합니다. bash 함수는 (예상치 않은) 어떻습니까 :
function pushCurrent {
git config push.default upstream
git push
git config push.default matching
}
가치가있는 것에 대한 최고의 지름길 :
내 .bash_profile
경우 alias push="git push origin HEAD"
, 그래서 내가 입력 할 때마다 내가 push
현재 분기로 밀고 있음을 알고 있습니다.
ceztko의 답변을 통해 나는 인생을 더 쉽게하기 위해이 작은 도우미 기능을 작성했습니다.
function gpu()
{
if git rev-parse --abbrev-ref --symbolic-full-name @{u} > /dev/null 2>&1; then
git push origin HEAD
else
git push -u origin HEAD
fi
}
현재 분기를 원점으로 푸시하고 아직 설정되지 않은 경우 원격 추적 분기를 설정합니다.
참고 URL : https://stackoverflow.com/questions/14031970/git-push-current-branch-shortcut
'development' 카테고리의 다른 글
정규식 : 첫 문자 발생까지 일치 (0) | 2020.03.15 |
---|---|
ViewPager를 동적으로 업데이트 하시겠습니까? (0) | 2020.03.15 |
CSS에서만 위첨자? (0) | 2020.03.15 |
NSLog에서 부울 플래그를 인쇄하는 방법? (0) | 2020.03.15 |
리포지토리 액세스가 거부되었습니다. (0) | 2020.03.15 |