我想把我的本地分支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
结果竟然提交成功。我提交后又试了一下有空格的命令,还是同样的错误。
请问大家这个是怎么回事,是真的由空格导致的吗?
巴扎黑2017-04-22 09:01:39
사용자 입장에서는 공백으로 인한 문제입니다. 이러한 공백으로 인한 비극처럼 껍질 속의 공백으로 인해 발생하는 문제도 많습니다.
git의 경우 매개변수가 잘못되었습니다. 분명히 "push", "origin" 및 "A:A" 세 개의 매개변수가 필요하지만 "push", "origin", "A", ":" 및 "A"라는 5개의 매개변수를 지정했습니다.
PS: git push origin A:A
은 git push orgin A
로 축약할 수 있습니다.
天蓬老师2017-04-22 09:01:39
제발 밟지 마세요. 제가 말한 내용이 이해하기 어려울까봐 걱정됩니다.
"정규식 익히기"를 읽을 때 공백 문자를 셸 메타 문자(구분자는 말할 것도 없고)로 처리할 수 있지만 공백 문자의 역할은 문자와 명령을 구분하는 데 사용된다는 설명을 읽었습니다. 예를 들어, 쉘 프로그램을 작성할 때 더 이상 args.split('s')
메소드를 사용하여 명령 매개변수를 구분할 필요가 없습니다.
,
A:A
이번 호에는