19

すでに NVM をインストールしていたので、oh-my-zsh を見つけてインストールしました。.zshrcで有効にしたnvmプラグインがあるようです。

また、これを.zprofileに入れました

export NVM_DIR="/Users/me/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"  # This loads nvm

これで nvm を使用できるようになりましたが、エイリアスのデフォルトを別のバージョンに設定すると、次にシェルを開いたときに nvm が元に戻ります。

$ iojs -v
v1.2.0
$ which iojs
/Users/me/.nvm/versions/io.js/v1.2.0/bin/iojs
$ nvm use 1.5.1
Now using io.js v1.5.1
$ nvm alias default iojs v1.5.1
default -> iojs (-> iojs-v1.5.1)
$ which iojs
/Users/me/.nvm/versions/io.js/v1.5.1/bin/iojs

次に、新しいシェルを開いた後:

$ which iojs
/Users/me/.nvm/versions/io.js/v1.2.0/bin/iojs

私の古い bash のインストールは、どういうわけか台無しになる可能性がありますか? 私はOSXを使用していますが、違いはないと思います。

--------- 編集 ------ 要求に応じてさらに出力

➜  ~  nvm version
iojs-v1.2.0
➜  ~  ls $NVM_DIR/alias
default
➜  ~  cat $NVM_DIR/alias/default
iojs
➜  ~  nvm alias iojs
iojs -> iojs-v1.5 (-> iojs-v1.5.1) (default)
➜  ~  nvm alias $(cat $NVM_DIR/alias/default)
iojs -> iojs-v1.5 (-> iojs-v1.5.1) (default)

1.2.0 に戻す理由がわかりました。oh-my-zsh のインストール中に、Bash シェルからアクティブな PATH を取得し、その時点でアクティブな nvm パスを含む .zshrc ファイルにコピーしたようです。

/Users/me/.nvm/versions/io.js/v1.2.0/bin

しかし、それをPATHから削除した後、新しいシェルを起動した後、zshはNodeバイナリを見つけることができなくなりました。それでも問題は私が質問することです.なぜNVM設定が記憶されないのですか? 以前のようにアクティブシェルに設定できますが、固執しません。

私は今、oh-my-zsh のインストールに根本的な問題があるのではないかと考えています。たとえば zshrc で git プラグインを有効にしていますが、コマンド「gst」は有効なエイリアスではありません。

plugins=(git、gitflow、nvm、brew、tmux)

➜  ~  gst
zsh: command not found: gst
4

8 に答える 8

27

の末尾に以下を追加.zshrc

export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh

最後にならなければならないことに注意してください、理由はわかりません

于 2015-11-09T07:57:58.997 に答える
10

私は今それを働いています。oh-my-zshを再インストールしました。

何が変わったのかわかりません。nvm プラグインを機能させるには、プラグインを有効にしておく必要があるようです。

プラグインなしで、nvm 起動コマンドを .zprofile に入れてみました

export NVM_DIR="/Users/me/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"  # This loads nvm

ファイルは新しいシェルの作成時に読み込まれますが、NVM が適切に有効化されていないようです。

また、.zshrc で zsh プラグインの構成を間違えると、エラーは発生せず、プラグインが機能しないことに気付きました。ですから、これは気をつけなければならないことだと思います。たとえば、誤ってコンマを使用すると、プラグインが警告なしに壊れます。

plugins=(git, gitflow, nvm)
于 2015-03-22T21:43:29.433 に答える
1

nvmをインストールするときにbrewが述べたように、「以下を ~/.bash_profile または目的のシェル構成ファイルに追加します。」

export NVM_DIR="$HOME/.nvm"
[ -s "$(brew --prefix)/opt/nvm/nvm.sh" ] && . "$(brew --prefix)/opt/nvm/nvm.sh" # This loads nvm
[ -s "$(brew --prefix)/opt/nvm/etc/bash_completion" ] && . "$(brew --prefix)/opt/nvm/etc/bash_completion" # This loads nvm bash_completion

.zprofile は .bash_profile と同等ですが、.zprofile に行を追加すると、何らかの理由でエイリアスが無視されます。そのため、代わりに .zshrc に追加してください。

これらの行の最新バージョンがあるhttps://formulae.brew.sh/formula/nvmを参照してください。

それがうまくいかない場合...一部の人々は、PATHに何かを追加することに成功しているようです: https://github.com/nvm-sh/nvm/issues/1703#issuecomment-356221842

于 2019-10-21T12:35:51.550 に答える
1

~/.zshrc ファイル内にこの行がある場合

export PATH="/usr/local/opt/node@8/bin:$PATH"

その行を削除するか、ファイルでコメントアウトしてください。

于 2019-07-23T08:59:02.087 に答える
0

に追加すると、これはうまくいきました~/.zprofile

export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh
于 2015-10-14T02:09:00.990 に答える
0

Linux (Ubuntu 20.04) の場合

お好みのエディターで ~/.zshrc を編集します

nano ~/.zshrc

ファイルの最後に次を追加します。

# NVM
export NVM_DIR=~/.nvm
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"

そして、実行します:

source ~/.zshrc
于 2021-06-23T06:24:59.953 に答える