Ohmyzsh: zsh:一致するものが見つかりません:HEAD ^

作成日 2011年06月28日  ·  16コメント  ·  ソース: ohmyzsh/ohmyzsh

このgitコマンドを実行すると、 git reset --soft HEAD^これが返されますzsh: no matches found: HEAD^

これらのプラグインを配置していますplugins=(brew bundler git osx rails3 ruby textmate)

最も参考になるコメント

コマンドで^をエスケープします。

git reset --soft HEAD\^

全てのコメント16件

コマンドで^をエスケープします。

git reset --soft HEAD\^

甘い。 ヒントをありがとう、それはそれをしました。

ええ、これはzshellの問題です。 または、HEAD〜を使用して、毎回エスケープする必要がないようにすることもできます。

実際、この問題は、oh-my-zshのベアボーン構成の設定が原因です。 単純な古いZSHでは発生しません。

$ zsh -f 
ratham% echo HEAD^
HEAD^
ratham% 

したがって、おそらくこの問題を再開する必要があります。

そのため、oh-my-zshを使い始めるずっと前にこの問題が発生しました。

OPとまったく同じセットアップを使用します(ただし、rvmはインストールされていません)。

davidd @ hal9000 .dotfiles%g co HEAD ^
M vim / bundle / vim-rails
M zsh / path.zsh
..。

これは、単にrvmが追加されたzshです。

davidd @ hal9000 .dotfiles%zsh -f
hal9000%ソース "$ HOME / .rvm / scripts / rvm"
hal9000%g co HEAD ^
zsh:一致するものが見つかりません:HEAD ^

素晴らしい発見! RVM課題追跡システムでもこれを報告してください。

私はもう少し掘り下げて、本当の犯人を見つけました:

# after loading RVM
$ unsetopt extendedglob
$ echo HEAD^
HEAD^

ああ、^はextendedglobのシンボリックリンクを除外しているようです。 さて、これは意図したとおりに機能していると思います。

man zshall

^ x(EXTENDED_GLOBを設定する必要があります。)パターンx以外のすべてに一致します。 これは、 /', so ^ foo / bar 'が.' except / foo'内のディレクトリで `bar 'という名前のファイルを検索するよりも優先されます。

解決策を探している人にとって、これを修正する別の方法はsetopt NO_NOMATCH 、これは悪い一致をコマンドに渡します。

素晴らしいヒント! unsetopt nomatch FTW。 :-)

@nickmeharry :heart_eyes:

そうそう、それが他の問題にも役立った@nickmeharryのヒントを

はい、この行で問題が修正されました。ありがとう

これがデフォルトの動作ではありませんか? setoptNO_NOMATCHを見つけるのに少し時間がかかりました

甘い! @nickmeharry

このページは役に立ちましたか?
0 / 5 - 0 評価