2014-05-09 4 views

Antwort

18

Ich habe gerade über automatische Version Switching für Node.js https://github.com/wbyoung/avn erfahren, können Sie das verwenden.

Sie können auch diesen Thread folgen https://github.com/creationix/nvm/issues/110

+0

Diese deprimierend ist .. gibt es keine Begrenzung zur Werkzeugstapeltiefe? Knoten → npm → nvm → avn, und sichern. * seufz * Ich werde Ball spielen, aber meine Leidenschaft schwindet mit jedem Hack. (Und danke für den Link, natürlich, gabo.) – hraban

+0

Keiner der Kommentare im erwähnten Thread hat mit bash für mich funktioniert. Vielleicht sind sie alle für MacOS. Für etwas, das in Ubuntu funktioniert, überprüfe meine Antwort unten. – devius

13

Wenn Sie zsh (z Shell):

Berufung 'NVM Verwendung' automatisch in einem Verzeichnis mit einem .nvmrc Datei

Setzen Sie dies in Ihre $ HOME/.zshrc, um nvm automatisch aufzurufen, wenn Sie ein Verzeichnis eingeben, das eine .nvmrc-Datei mit einer Zeichenfolge enthält, die nvm den Knoten mitteilt zu verwenden:

# place this after nvm initialization! 
autoload -U add-zsh-hook 
load-nvmrc() { 
    local node_version="$(nvm version)" 
    local nvmrc_path="$(nvm_find_nvmrc)" 

    if [ -n "$nvmrc_path" ]; then 
    local nvmrc_node_version=$(nvm version "$(cat "${nvmrc_path}")") 

    if [ "$nvmrc_node_version" != "N/A" ] && [ "$nvmrc_node_version" != "$node_version" ]; then 
     nvm use 
    fi 
    elif [ "$node_version" != "$(nvm version default)" ]; then 
    echo "Reverting to nvm default version" 
    nvm use default 
    fi 
} 
add-zsh-hook chpwd load-nvmrc 
load-nvmrc 

Weitere Informationen: https://github.com/creationix/nvm#zsh

0

Wenn Sie bash verwenden, können Sie diese in Ihre ~/.bashrc Datei hinzufügen:

enter_directory() { 
    if [[ $PWD == $PREV_PWD ]]; then 
    return 
    fi 

    PREV_PWD=$PWD 
    [[ -f ".nvmrc" ]] && nvm use 
} 

export PROMPT_COMMAND=enter_directory 
Verwandte Themen