Hogyan lehet visszaminősíteni a csomópontot, vagy telepíteni egy adott korábbi verziót a homebrew használatával?

Főzést használok. Csomópontom van telepítve, brew használatával. A csomópont egy korábbi verzióját szeretném használni.

Online , Találok utasításokat, például , például :

cd /usr/local/Library/Formula brew remove node --force brew versions node git checkout 83988e4 /usr/local/Library/Formula/node.rb brew install node 

A problémám ezzel az, hogy brew nem tűnik úgy, hogy versions alparancs:

$ brew versions node Error: Unknown command: versions $ brew --version 0.9.5 

Újonnan főzök. Valahogy engedélyeznem kell a versions alparancsot? Másik alparancsot használok helyette? Van-e egy teljesen más módszer, amelyet ki kellene próbálnom?

OS X Yosemite-t futtatok (10.10.1); brew 0.9.5.

Megjegyzések

  • A node.js melyik verzióját szeretné telepíteni?
  • A főnököm elmondja 10,32. Gondolom 0.10.32-re gondol. Most telepítettem a 0.12.0 verziót.
  • Ezen a napon az olvasónak erre a válaszra kell mennie: stackoverflow.com/a/4158763/48136

Válasz

Manapság, ha a így csinálod:

Először keresd meg a kívánt csomagot:

brew search node 

Ez megadhatja kövesse az eredményeket:

heroku/brew/heroku-node ✔ llnode [email protected] nodebrew leafnode node ✔ [email protected] .... 

Ezután telepítse a kívánt verziót:

brew install [email protected] 

Ne feledje hogy egyszerre több csomópont csomagot is telepíthet, de nem érheti el egyszerre. Tehát, ha a legújabb / generic node csomag már telepítve van, akkor először le kell kapcsolnia:

brew unlink node 

És akkor összekapcsolhat egy másik verziót:

brew link [email protected] 

Néhány régebbi (csak hordós) csomópont-verzió esetén szükség lehet a s --force és --overwrite opciók:

brew link --force --overwrite [email protected] 

megjegyzések

  • a legjobb válasz itt.
  • Ne feledje, hogy a rendszer kéri, hogy ” kérje a a csomópont meglévő verziója, mielőtt sikeresen telepíthetné a felsorolt többi verzió egyikét (a fenti utasítások szerint). A ” leválasztásával ” a fizikailag telepített másik verziót hagyja a rendszerén, de a telepített (a leválasztás után) az lesz ” alapértelmezett ” verzió a rendszeren. Például be kell írnia a brew unlink node parancsot, ha telepítette a brew install node fájlt. Ezután megteheti a következőt: brew install homebrew/versions/node4-lts (amelyet a jelen útmutató utasításainak megfelelően felsorolt verzióként kell látnia).
  • homebrew/versions/node06 it ‘ s most homebrew/versions/node6-lts. Szintén tegye a következőt: brew link node6-lts.
  • Frissítettem a válaszomat, hogy tükrözze a legfrissebb főzési változásokat. Köszönöm!
  • de hogyan telepíthetünk egy adott verziót, például a 8.2.1 csomópontot a brew használatával?

Válasz

Itt vannak lépésről lépésre.

Az aktuális csomópont verziójának megtekintése

$ node --version 

Az elérhető csomópont verziók megtekintése

$ brew search node 

Az aktuális verzióról való leválasztás

$ brew unlink node 

Bármely verzió telepítése, pl. 8

$ brew install [email protected] 

A telepített verzió összekapcsolása

$ brew link [email protected] 

Az aktuális csomópontverzió újbóli megtekintéséhez

$ node --version 

Megjegyzések

  • Éppen amire szükségem volt
  • Hogyan oldhatom meg ezt a problémát? Brew link csomópont @ 10 Figyelem: a @ 10 csomópont csak hordó, és össze kell kapcsolni – Force ha inkább ezt a szoftvert szeretné elérni a PATH-ban, inkább fontolja meg a futtatást: echo ‘ export PATH = ” / usr / local / opt / node @ 10 / bin: $ PATH ‘ > > ~ / .bash_profile
  • nem működött ‘ nem a Mac OS 10.13.5 rendszeren, így stackoverflow.com/questions/53043476/…
  • hogyan telepíthetem a csomópont adott verzióját, telepítem a csomópont verzióját ” 10.17.0 ” a brew install node @ 10 paranccsal, de telepítenem kell a ” 10.15.3 “.

Válasz

óta ez a PR a homebrew / verziókhoz és ehhez a PR-hez a homebrew -hoz, a válaszok brew tap homebrew/versions vagy *-lts csomagok már nem működnek.

A helyes válasz most a következő:

brew install [email protected]<version> 

Ahol <version> 0.10, 0.12, 4 stb. Például a Node.js v6 telepítéséhez (ettől kezdve írás, a legújabb LTS-verzió):

brew install [email protected] 

Előfordulhat, hogy a parancsok előtt futtatnia kell a brew update parancsot a győződjön meg arról, hogy ezek az új verziójú képletek rendelkezésre állnak. Ha a node képlet másik verziója van telepítve, akkor először le kell futtatnia a brew unlink node

Megjegyzések

Válasz

brew versions valamikor be kell telepíteni a brew telepítését követően.

$ brew tap homebrew/boneyard 

Ezután használhatja a brew versions parancsot, amint azt az utasítás feltételezi.

Megjegyzések

  • homebrew/boneyard elavult, és helyébe a következőt kell beírni: github.com/Homebrew/homebrew-versions Telepítés a következővel: brew tap homebrew/versions.
  • A homebrew/versions segítségével megkapja a csomag verziószámát: brew search node => leafnode node node010 node04 node06 node08 nodebrew .... Tehát

, majdbrew link --overwrite node010, majd telepítse a Node 0.10 verzióját.JS.

  • Lehet, hogy brew unlink node mielőtt brew install node010
  • Válasz

    FYI, ha korábban telepítette a régi verziót, és még nem futtatta brew cleanup (amely törli a régi verziókat), akkor válthat a brew switch node 5.7.0

    A csomópont összes telepített verziója felsorolható a brew info node vagy a ls -l /usr/local/Cellar/node/

    Lásd a főzési parancs csalólapját: http://ricostacruz.com/cheatsheets/homebrew.html

    Megjegyzések

    • 2017/12-től működik! Homebrew 1.4.0-17-gc912d26

    Válasz

    Nagyon sok válasz van itt és más helyeken mondjuk a homebrew verziók használatát, de ez nagyon korlátozott lehetőségeket kínál a Node melyik verziójához telepítheti.

    Sokkal könnyebb használni az NVM-et, és nagyon könnyen lehet váltani a verziók között.

    homebrew install nvm 

    Ezután kövesse a figyelmeztetéseket – mkdir ~/.nvm, és adjon két sort a .bash_profile és source .bash_profile

    Ezután egyszerűen futtassa a nvm install <version> alkalmazást az összes szükséges verzióhoz. nvm use <version> váltáshoz.

    Megjegyzések

    • Ez nem az elfogadott válasz, de ez az egyetlen olyan, ami nekem bevált. Bárcsak először ezt próbáltam volna ki, mert rengeteg időt spóroltam volna meg.

    Válasz

    Ha kifejezetten Node-ra van szüksége, használhatja a nvm . Nagyon kényelmes, ha sokat dolgozik a Node-tal.

    Megjegyzések

    • Az nvm szerint a docs sör és nvm nem támogatott kombó. Itt kommentáltam ezt. github.com/angular/angular-cli/issues/… I ‘ d érdekelne bármilyen háborús történetet erről. Mivel úgy tűnik, hogy a felszínen ez annak ellenére működik, hogy ‘ s ” nem támogatott ”

    Válasz

    A NodeJS világ előnyben részesített módja a n

    • Telepítés: npm install -g n
    • 8.8.4 csomópont telepítése n 8.8.4
    • Sorolja fel az összes helyileg elérhető csomópont verziót, és válasszon egyet: n

    Hasonlónak tűnik a nvm -hez, de problémáim voltak a nvm -vel, és a n működött a dobozból.

    Válasz

    Homebrew nélkül is megteheti.

    A csomópontot manuálisan eltávolíthatja, majd telepítheti.

    Töltse le a jelenlegi futó verziót. Itt van a lista .

    Töltse le a vode {your-current-version-number} .tar.gz csomópontot, bontsa ki és majd lépjen a parancssorba.

    cd node-v{your-current-version-number} ./configure make sudo make install 

    Az eltávolításához sudo make uninstall

    Ezután töltse le a telepíteni kívánt verzió, és kövesse ugyanezeket a fenti lépéseket.

    Ebből a blogbejegyzésből

    Megjegyzések

    • +1 erre a válaszra.FWIW, éppen másolni tudtam a nem célzott bin/ mappát a PATH-ra, hogy ez működjön.
    • Még jobb, ha letöltheti onnan a .pkg fájlt. és kattintson duplán a telepítéshez.

    Válasz

    Ha a homebrew-val gondjai merültek fel a csomópont, csak letöltheti az OSX .pkg fájlt a https://nodejs.org/dist/[VERSION_YOU_NEED] fájlból. Ez csak nekem segít a csomópont újratelepítésében.

    Válasz

    Legyen olyan képalkotás, amelynek 0.12. * Verziója van. downgrade) A csomópont 0.10-es verziója dobja be a főzést az OSX-ben, így kell:

    $ sudo brew tap homebrew-versions $ brew unlink node $ brew install https://raw.githubusercontent.com/Homebrew/homebrew-versions/master/node010.rb $ node -v 

    Az összes csomópontverzió listája itt

    Válasz

    https://nodejs.org/en/blog/release/

    Ide léphet és telepítheti a szükséges verziót.

    Telepítés előtt érdemes futtatni a brew unlink node az aktuális verzió leválasztásához.

    Megjegyzések

    • Mi lenne az előnye, ha így csinálnánk, szemben a brew használatával (amint azt számos más válasz leírja), vagy távolítsa el a csomópontot, majd manuálisan telepítse (a @ Terente-Ionut-Alexandru ‘ válasz leírása szerint)?
    • @ A JohnN főzési verziói jelenleg elavultak. Alternatíváit nem túl könnyű megérteni. omplex through brew a pontos verzió telepítéséhez.
    • @ Paweł-Gościcki ‘ válasza (a legmagasabb minősítésű, 140 szavazattal) nagyon könnyen érthetőnek tűnik, és korántsem bonyolult – ami megfelel a legutóbbi tapasztalataimnak a főzéssel és a formulák különböző verzióival. Azt akarom mondani, hogy a válaszod nem úgy tűnik, hogy ‘ hozzáteszi mindazt, ami még nem hangzott el ‘, ha más válaszokban már nem volt szó div id = “52d3888a7e”>

    oka annak, hogy a manuális leválasztást + manuális eltávolítást kell elvégezni, nem pedig az eltávolítást + a manuális telepítést, ahogy Terente javasolta?

  • @JohnN Ez természetesen könnyen érthető. De korlátozni fogják azokat a lehetőségeket, amelyeket a sörkeresés ad. Például. ha pontosan szeretné a 4.4.6 csomópontot, de a főzés csak egy csomópont @ 4 lehetőséget biztosít. Ezért.
  • Úgy gondolom, hogy a kérdésre 3 megfelelő válasz adható: (1) használd a brew-ot, (2) használd az nvm-et, és (3) távolítsd el és telepítsd manuálisan. Amire ‘ m megpróbállak rávenni, az megmagyarázza, miért ad hozzá válasza ezekhez a meglévő válaszokhoz. Miért érzi előnyösebbnek a leválasztást és a manuális telepítést, mint a meglévő válaszokat? Pontosabban, miért érzi úgy, hogy a * leválasztás * + manuális telepítés jobb, mint a * eltávolítás * + manuális telepítés, amint azt Terente ‘ válasza sugallja?
  • Vélemény, hozzászólás?

    Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük