찾다

 >  Q&A  >  본문

github - git 提交到远程分支的诡异错误

我想把我的本地分支push到github上的远程分支上,假设我的本地分知名是A,远程分支名也是A, 我刚开始输入如下命令:

git push origin A : A

结果报错:

error: dst ref refs/heads/A receives from more than one src. error: failed to push some refs to 'git@github.com:ningyu/algos.git'

google不到答案,我就尝试着把命令中冒号两边的空格去掉,因为有文章用的命令是没有空格的。

git push origin A:A

结果竟然提交成功。我提交后又试了一下有空格的命令,还是同样的错误。

请问大家这个是怎么回事,是真的由空格导致的吗?

伊谢尔伦伊谢尔伦2800일 전705

모든 응답(2)나는 대답할 것이다

  • 巴扎黑

    巴扎黑2017-04-22 09:01:39

    사용자 입장에서는 공백으로 인한 문제입니다. 이러한 공백으로 인한 비극처럼 껍질 속의 공백으로 인해 발생하는 문제도 많습니다.

    git의 경우 매개변수가 잘못되었습니다. 분명히 "push", "origin" 및 "A:A" 세 개의 매개변수가 필요하지만 "push", "origin", "A", ":" 및 "A"라는 5개의 매개변수를 지정했습니다.

    PS: git push origin A:Agit push orgin A로 축약할 수 있습니다.

    회신하다
    0
  • 天蓬老师

    天蓬老师2017-04-22 09:01:39

    제발 밟지 마세요. 제가 말한 내용이 이해하기 어려울까봐 걱정됩니다.

    "정규식 익히기"를 읽을 때 공백 문자를 셸 메타 문자(구분자는 말할 것도 없고)로 처리할 수 있지만 공백 문자의 역할은 문자와 명령을 구분하는 데 사용된다는 설명을 읽었습니다. 예를 들어, 쉘 프로그램을 작성할 때 더 이상 args.split('s') 메소드를 사용하여 명령 매개변수를 구분할 필요가 없습니다. ,

    ... .

    A:A 이번 호에는

    가 완전한 부분이 되어야 한다고 생각합니다. <🎜>

    회신하다
    0
  • 취소회신하다