치명적 : 현재 지점 마스터에 업스트림 지점이 없습니다. current branch and set

내 프로젝트 중 하나를 github에 푸시하려고 하는데이 오류가 계속 발생합니다.

peeplesoft@jane3:~/846156 (master) $ git push

fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use

     git push --set-upstream origin master

그래서 나는 그것을 시도하고 이것을 얻었다.

peeplesoft@jane3:~/846156 (master) $ git push --set-upstream origin master

fatal: Authentication failed

또 다른 stackoverflow 스레드는 실망스러운 결과로 다음을 시도해 보라고 제안했습니다.

peeplesoft@jane3:~/846156 (master) $ git push -u origin master

fatal: Authentication failed

그런 다음 이것을 시도했습니다.

peeplesoft@jane3:~/846156 (master) $ git config remote.origin.push HEAD

peeplesoft@jane3:~/846156 (master) $ git push

fatal: Authentication failed

힌트가 있습니까?



답변

푸시를 수정했지만 해당 푸시 문제 ( ” 새 분기를 명시 적으로 푸시해야하는 이유 “: git push -u origin master또는 git push -u origin --all)에서 설명한대로 이제 인증 문제를 해결해야합니다.

귀하의 URL에 따라 다릅니다 ( ‘ git@github.com/yourRepo에서와 같은 SSH 또는에서와 같은 https https://github.com/You/YourRepo)

https URL의 경우 :

계정이 이중 인증으로 보호되는 경우 여기 또는 여기에 설명 된대로 https 비밀번호의 경우 일반 비밀번호가 작동하지 않습니다 .

비밀번호에 특수 문자가 포함되어 있으면 동일한 문제입니다 ( 이 답변 에서와 같이 )

https가 작동하지 않으면 (보조 키, PAT : 개인 액세스 토큰을 생성하지 않기 때문에) 여기에 표시된 것처럼 ssh로 전환 할 수 있습니다 .


주석에서 qwerty 가 언급했듯이 다음을 사용하여 원격에서 동일한 이름의 분기를 자동으로 만들 수 있습니다.

git push -u origin head

왜?

  • HEAD는 (귀하의 참조 .git\HEAD파일) 현재 체크 아웃 지점의 refspec있다 (예 : ref: refs/heads/master)
  • 기본 푸시 정책간단합니다

이 푸시에 사용 된 refpec은 head 🙁 대상 없음)이므로 누락 :<dst><src>(head, 분기) 와 동일한 참조를 업데이트하는 것을 의미합니다 .

HEAD가 분리되어 있으면 작동하지 않습니다 .


답변

또한 다음 명령을 사용할 수 있습니다.

git push -u origin master

그러면 원격 저장소에 다른 분기가 (-u) 생성됩니다. ssh를 사용한 인증이 완료되면


답변

--all처음 푸시 할 때 매개 변수 를 잊어 버린 경우에도이 오류 메시지가 나타납니다 . 나는 썼다

git push -u origin

이 오류가 발생했을 것입니다.

git push -u origin --all

이런 복사-붙여 넣기 오류를 어떻게 좋아합니까?


답변

먼저 리모콘을 구성한 다음 푸시해야합니다.

git remote add origin url-to-your-repo

실제 지침


답변

이 시나리오를 시도하십시오

git push -f --set-upstream origin master


답변

액션을 정의하면 git push 경우 명령 행에 refspec이 제공되지 않고 원격에 refspec이 구성되어 있지 않고 명령 행에 제공된 옵션에 의해 refspec이 암시되지 않으면 를 취해야합니다.

그냥 해:

git config --global push.default current

그때

git push


답변

글쎄, 업로드하는 동안 똑같은 문제가 발생했으며 동일한 작업을 수행하여 문제를 해결했습니다. 이전에는 https와 같이 Linux에서 터미널을 내 저장소로 푸시하려고했습니다.

git push https://github.com/SiddharthChoudhary/ClientServerCloudComputing.git

그러나 결과가 나오지 않아서 더 깊이 들어가서 시도했습니다.

git push --set-upstream https://github.com/SiddharthChoudhary/ClientServerCloudComputing.git master

그리고 효과가있었습니다. 따라서 사용자 이름과 비밀번호를 묻는 메시지가 나타납니다. 나는 또한 토큰생성했으며 암호 대신 토큰을 붙여 넣어 성공적으로 완료했습니다.

  1. 토큰을 생성하려면 Github 계정과 개발자 설정에서 다른 토큰을 생성하십시오.
  2. 그것을 얻은 후, 해당 토큰을 복사하여 암호 프롬프트가 표시되면 붙여 넣습니다.