最近vagrant圖像我使用切換到zsh,我不能從遠程獲得git筆記。我嘗試:如何用zsh正確獲取git筆記?
git fetch origin refs/notes/*:refs/notes/*
並獲得:
zsh: no matches found: refs/notes/*:refs/notes/*
什麼是正確的命令呢?
最近vagrant圖像我使用切換到zsh,我不能從遠程獲得git筆記。我嘗試:如何用zsh正確獲取git筆記?
git fetch origin refs/notes/*:refs/notes/*
並獲得:
zsh: no matches found: refs/notes/*:refs/notes/*
什麼是正確的命令呢?
zsh的看到星號在你的命令,認爲它是一個水珠,並試圖將其展開,但也有匹配模式的任何文件,因此它失敗。如果您在包裹的單引號的說法,它不會試圖展開水珠如預期的參數將被傳遞:
git fetch origin 'refs/notes/*:refs/notes/*'
假設你的命令有意義(我不確定),可能是因爲refs/notes/:refs/notes/
中的冒號被解釋爲結束設備名稱或奇怪的事情。嘗試在該參數周圍放置單引號,以阻止zsh試圖「理解」它。
git fetch origin 'refs/notes/:refs/notes/'
或者使zsh的行爲很像慶典,使用'SETOPT nonomatch'。不過,Zsh的默認行爲更清晰。在git的情況下,我建議使用'alias git ='noglob git'',因爲它很少需要它與globs,它可以做它自己的globbing在你想要的情況下。 – okapi