>

git 버전 2.16.2로 시작하려면 / etc/gitconfig와 ${HOME} /. gitconfig에 다음과 같은 항목이 있습니다.

[remote "origin"]
    push = HEAD

누르려고하면 다음 오류가 발생합니다.

$ git push
error: dst ref refs/heads/some/branch receives from more than one src.
error: failed to push some refs to 'git:/foo/bar/source.git'

git push origin some/branch 를 대신 사용하면 작동합니다.

${HOME}/.gitconfig 에서 구성을 주석 처리하면  그런 다음 git push  작동

$ git push
Counting objects: 21, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (18/18), done.
Writing objects: 100% (21/21), 9.60 KiB | 3.20 MiB/s, done.
Total 21 (delta 11), reused 12 (delta 2)

왜 중복이 더 긴 git push 를 요구하는지 설명 할 수 있습니까?  ?


  • 답변 # 1

    와이즈 비즈  설명서에 다음과 같은 내용이 있습니다.

    와이즈 비즈 와이즈 비즈  인수 또는 git push

    When the command line does not specify what to push with <refspec>...  옵션에서 명령은 기본 --all 를 찾습니다.   --mirror 에 문의하여  구성 ...

    여기서 Git은 다양한 콜백 함수를 호출하고 항목을 반복하여 구성 파일을 읽습니다. 하나는 접두사에 대해 호출 될 콜백 함수를 등록합니다. 이 경우 --tags   <refspec> 에 대한 콜백 등록 .

    2 개의 콜백을받습니다. 하나는 말합니다 :

    remote.*.push
    
    

    다른 사람은 말합니다 :

    git push
    
    
    Git이 remote.origin.push 와 결합한

    — 아마도 이것을 HEAD 로 설정했습니다.  또는 HEAD 참조가 무엇이든 refspec은 다음과 같이됩니다. 예 :

    HEAD
    
    

    이것은 대상 참조 push.default  두 개의 개별 소스 참조에서 업데이트해야합니다. simplegit push origin some/branch:some/branch some/branch:some/branch . 분명히, (당신과 나에게) 이것들은동일한소스이므로 문제가되지 않습니다. 그러나 이것을 처리하는 내부 코드는 그것이 생각하고 불평합니다.

    some/branch

관련 자료

  • 이전 c++ - VS2015로 컴파일 된 앱에서 VS2008의 디버그 재배포 가능 파일을로드하지 못했습니다
  • 다음 R - 아르 자형 - suppressmessages/suppresswarnings 작동하지 않습니다