2016-11-29 45 views
0

最近vagrant圖像我使用切換到zsh,我不能從遠程獲得git筆記。我嘗試:如何用zsh正確獲取git筆記?

git fetch origin refs/notes/*:refs/notes/* 

並獲得:

zsh: no matches found: refs/notes/*:refs/notes/* 

什麼是正確的命令呢?

回答

1

zsh的看到星號在你的命令,認爲它是一個水珠,並試圖將其展開,但也有匹配模式的任何文件,因此它失敗。如果您在包裹的單引號的說法,它不會試圖展開水珠如預期的參數將被傳遞:

git fetch origin 'refs/notes/*:refs/notes/*' 
+1

或者使zsh的行爲很像慶典,使用'SETOPT nonomatch'。不過,Zsh的默認行爲更清晰。在git的情況下,我建議使用'alias git ='noglob git'',因爲它很少需要它與globs,它可以做它自己的globbing在你想要的情況下。 – okapi

0

假設你的命令有意義(我不確定),可能是因爲refs/notes/:refs/notes/中的冒號被解釋爲結束設備名稱或奇怪的事情。嘗試在該參數周圍放置單引號,以阻止zsh試圖「理解」它。

git fetch origin 'refs/notes/:refs/notes/'