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


227

내 프로젝트 중 하나를 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

힌트가 있습니까?


1
REPO는 GitHub의에 존재해야 하기 전에 당신이 그것에 푸시 할 수 있습니다. 그렇습니까? 그리고 복제본으로 작업하는 리포지토리입니까?
matt

Github에서 저장소를 복제 한 다음 readme 파일에 한 줄을 추가 한 다음 다시 밀어 넣으려고했습니다.
user1524361

1
파일 커밋을 잊었 기 때문에 같은 오류가 발생했습니다
Mateen

3
-u와 --set-upstream은 동일합니다
brainLoop

gitOP가 게시 한 명령을 모두에게 알려주고 싶었 습니다. 답변보다 훨씬 더 도움이되었습니다
Nathan

답변:


94

푸시를 수정했지만 해당 푸시 문제 ( " 새 분기를 명시 적으로 푸시해야하는 이유 ": 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가 분리되어 있으면 작동하지 않습니다 .


1
대단한, 이것은 우리가 근본 원인 문제를 해결하기 위해 필요한 것입니다. 표면에서 문제를 해결하는 것이 아니라
workplaylifecycle

당신이 어떤 지점에 있다면, 이것은 유용합니다 git push origin head -u. 리모컨에 같은 이름의 분기를 자동으로 만듭니다.
Qwerty

1
@Qwerty 감사합니다. 좋은 지적입니다. 가시성을 높이기 위해 귀하의 의견 (추가 정보 포함)을 답변에 포함 시켰습니다.
VonC

115

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

git push -u origin master

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


2
문제는 인증과 관련이 있기 때문에 문제와 실제로 관련이 있습니다. 그는 또한 자신의 직책에서 이미 시도했다고 언급했다.
Mike Precup

2
나는 두 가지 이유로 하향 투표했다. 첫 번째 : OP는 이미 이것을 시도했다고 밝혔다. 두 번째 방법 : -uoption은 --set-upstream새 분기 생성과 관련이없는 옵션 의 바로 가기입니다 . 로부터 의 문서 -u또는 --set-upstream옵션 : "최신 또는 성공적으로 밀려 모든 지점의 경우, 인수없는 자식 풀 [1] 다른 명령에 의해 사용되는 업스트림 (추적) 참조를 추가합니다.". 실제로 나는이 답변이 오도 된 것처럼 그토록 많은 이유를 알지 못합니다.
louisfischer

38

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

git push -u origin

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

git push -u origin --all

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


3
감사. Visual Studio Code 에서이 오류가 발생하여 작동했지만 여러 개발자의 상황에서 누군가 이것이 무엇을했는지 설명 할 수 있습니까?
지옥.


13

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

git push -f --set-upstream origin master

7
이것이 작동하는 방법과 이유에 대한 자세한 설명을 제공해야합니다.
Benoît Latinier

6
"나쁘지 않다"는 정말 나쁜 설명이다. "나쁘지 않다"는 대답이 정말 나쁘다.
GhostCat

이것은 OP가 언급 한 오류 : "인증 실패"
Sean the Bean이

예. 그것은 나를 위해 일했다. 이것이 커밋을 업스트림 (원격) 브랜치로 강제하고 있다고 생각합니다.
vkg 2016 년

12

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

그냥 해:

git config --global push.default current

그때

git push

1
이것은 전역 git 설정을 변경하여 악영향을 줄 수 있음을 알아야합니다. 그러나 이것은 내가 찾던 것입니다.
Mavamaarten

@Mavamaarten 잠재적 부작용은 무엇입니까?
kosii

7

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

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

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

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

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

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

6

아주 간단한 측면에서 일단 다른 가지가 있으면 가지를 밀기 위해 사용할 수 없습니다

git push

그러나 푸시하려는 지점을 체크 아웃하더라도 분기를 지금 지정해야합니다.

git push origin <feature_branch>

심지어 master지점이 될 수있는 곳


5

나는 커밋 잊어 버리는 간단한 오류를 만들었습니다.

git commit -m "first commit"

그런 다음 git push origin master일했다.


4

나는 같은 문제가 있었다

여기에 이미지 설명을 입력하십시오

아래 명령을 사용하여 해결했습니다.

$ git branch --set-upstream develop origin/develop

.git 폴더의 구성 파일에 구성을 추가합니다.

여기에 이미지 설명을 입력하십시오


3

처음 사용 git pull origin your_branch_nameuse git push origin your_branch_name


죄송합니다. 어리석은 소리입니다. 내 지점 이름을 알 수있는 방법 리포지토리는 AWS에 있습니다.
Pravinraj Venkatachalam

"git branch"사용
Darius Miliauskas

3

macOS Sierra에서 저에게 도움이되는 간단한 해결책이 있습니다. 이 두 명령을 수행했습니다.

git pull --rebase git_url(Ex: https://github.com/username/reponame.git)
git push origin master

향후 푸시 후 업스트림에 치명적인 오류가 표시되면 다음을 실행하십시오.

git push --set-upstream origin master

0

1. 컴퓨터와 github 관련. SSH를 사용하십시오. 컴퓨터 코드이므로 확인 된 이미지 입력 ​​설명 을 제출할 필요가 없습니다.

2. 자식 빈 폴더를 관리 할 수 ​​없습니다. 따라서 파일에 저장된 이러한 readme.md를 작성해야합니다. 그렇지 않으면 파일을 찾을 수 없습니다.

3. 귀하의 지역 프로젝트는 새로운 프로젝트가 아닙니다. 부디

git init

git remote add origin +"githublink"

git add .

git commit -m "" 다시 가다.

4. 그런 다음 git pull origin master(키)

5. 마침내 git push origin master(모든 문제를 해결하십시오).

http://my.oschina.net/psuyun/blog/123005参考 链接


0

코드를 마스터 브랜치로 직접 푸시하려는 경우 명령을 사용하십시오.

git push origin master

도움이됩니다.


0

또한 같은 오류가 발생했습니다. 복제하고 밀어 넣으려고했기 때문이라고 생각합니다. $ git push -u origin master 이것은 올바른 명령입니다.

계산 개체 : 8, 완료. 최대 2 개의 스레드를 사용한 델타 압축. 압축 객체 : 100 % (4/4) 완료 객체 쓰기 : 100 % (8/8), 691 바이트 | 46.00 KiB / s 완료 총 8 (델타 1), 재사용 된 0 (델타 0) 원격 : 델타 해결 : 100 % (1/1) 완료.

  • [신규 지점] 마스터-> 마스터 지점에서 원격 지점 마스터를 추적하도록 설정되는 지점 마스터.

    It was successful. Try to create new u branch 
    

0

나는 같은 문제가 있었는데, 그 이유는 내가 지점을 지정하는 것을 잊어 버렸다는 것입니다.

git push myorigin feature/23082018_my-feature_eb

0

필자는 쓰기 권한이없는 개인 저장소로 변경 사항을 적용하고있었습니다. 푸시 또는 풀 작업을 수행하는 동안 유효한 액세스 권한이 있는지 확인하십시오.

직접 확인할 수 있습니다


1
"직접 확인"이란 무엇입니까?
Mike Poole

0

나를 위해 숨겨진 숨겨진 .git을 삭제했기 때문입니다. 폴더를 입니다.

폴더를 삭제하고 다시 복제하고 변경하여 다시 수정했습니다.


0

어느 지점에 있더라도 다음을 사용할 수 있습니다.

git push origin head -u

이렇게하면 원격에서 동일한 이름의 새 분기가 자동으로 생성됩니다.


-1

이 문제를 해결하려면 코드 git자체 를 체크 아웃하는 동안 다음과 같은 명령을 제공해야합니다.

git checkout -b branchname origin/branchname

여기에서는 기본적으로 설정 the upstream branch되어 있으므로 언급 된 문제에 직면하지 않습니다.


-2

나에게 문제는 내 지점의 이름에서 나옵니다 : "# name-of-my-branch", "#"없이 작동합니다!

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.