github - git 提交到遠端分支的詭異錯誤
伊谢尔伦
伊谢尔伦 2017-04-22 08:59:39
0
2
694

我想把我的本地分支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

結果竟然提交成功。我提交後又試了一下有空格的命令,還是同樣的錯誤。

請問大家這個是怎麼回事,是真的由空格導致的嗎?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回覆(2)
巴扎黑

對於使用者來說,是由於空格導致的問題。 shell 空格導致的問題不少,像是這個空格引發的慘劇。

對於 git 來說,是你的參數不對。它明明要三個參數「push」「origin」以及「A:A」的,你卻給它五個:「push」「origin」「A」「:」「A」。

PS: git push origin A:A 可简写为 git push orgin A

Peter_Zhu

請不要踩我,我怕我說的比較難理解。

我在看《精通正規表示式》時,讀到一個說法,我們或許可以把空格符當作shell的元字符(且不說是分隔符),只是空格符這種元字符的作用是用來分割字元的,用來分割命令列參數的,舉例說,我們寫shell程式時不需要再使用args.split('s')的方法来分割命令参数,直接取

... 就可以了。

A:A在這個問題上的話,我認為

應該是一個完整的一部分。 🎜
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板