Git: -u 플래그 누락으로 인해 푸시가 실패한 후 프롬프트 자동 완성

Git: -u 플래그 누락으로 인해 푸시가 실패한 후 프롬프트 자동 완성

git을 사용하면 로컬 브랜치를 생성한 다음 이를 원격(예: Github)으로 푸시하려는 경우가 많습니다. 이를 위해서는 -u또는 --set-upstream플래그가 필요합니다.

git이 플래그가 없는 출력은 다음과 같습니다 .

$ git checkout -b newbranch
$ git push
fatal: The current branch cross_val has no upstream branch.
To push the current branch and set the remote as upstream, use

    git push --set-upstream origin newbranch

이 제안을 내 메시지에 복사할 수 있는 방법이 있나요? 이렇게 하면 입력할 필요가 없습니다. 그것은 다음과 같습니다:

$ git checkout -b newbranch
$ git push
fatal: The current branch cross_val has no upstream branch.
To push the current branch and set the remote as upstream, use

    git push --set-upstream origin newbranch

$ <tab>
$ git push --set-upstream origin newbranch

답변1

현재 분기를 원격으로 푸시하도록 별칭을 설정할 수 있습니다.

다음 명령을 사용하여 별칭을 구성합니다.

git config --global alias.rpush '!git push --set-upstream origin $(git rev-parse --abbrev-ref HEAD)'

git rev-parse --abbrev-ref HEAD명령은 현재 분기의 이름을 반환합니다. 그런 다음 실행하십시오.

git rpush

원하는 대로 별칭에 다른 이름을 지정할 수 있습니다.

답변2

이렇게 하면 원하는 대로 정확하게 수행되지는 않지만 bash를 사용하면 수행해야 하는 입력량이 줄어듭니다.

https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash

관련 정보