Jak mohu downgradovat uzel nebo nainstalovat konkrétní předchozí verzi pomocí homebrew?

Používám brew. Mám nainstalovaný uzel, používám brew. Chci použít starší verzi uzlu.

Online , Najdu pokyny například , například :

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

Mám s tím problém, že brew nevypadá, že by měl versions dílčí příkaz:

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

Jsem nový, kdo vaří. Musím dílčí příkaz versions nějak povolit? Místo toho používám jiný dílčí příkaz? Existuje úplně jiná metoda, kterou bych měl vyzkoušet?

Používám OS X Yosemite (10.10.1); brew 0.9.5.

Komentáře

  • Kterou verzi node.js chcete nainstalovat?
  • Můj šéf říká mi 10,32. Myslím, že má na mysli 0,10,32. Právě teď mám nainstalován 0.12.0.
  • K tomuto datu by měl čtenář přejít na tuto odpověď: stackoverflow.com/a/4158763/48136

Odpověď

V těchto dnech, pokud chcete nainstalovat jinou verzi node uděláte to takto:

Nejprve vyhledejte požadovaný balíček:

brew search node 

To vám může poskytnout následujte výsledky:

heroku/brew/heroku-node ✔ llnode node@10 nodebrew leafnode node ✔ node@8 .... 

A poté nainstalujte požadovanou verzi:

brew install node@8 

Pamatujte také že můžete nainstalovat více než 1 balíček uzlů současně, ale nemůžete je mít k dispozici současně. Pokud tedy máte nejnovější / obecný node balíček již nainstalovaný, musíte jej nejprve odpojit:

brew unlink node 

A pak můžete propojit jinou verzi:

brew link node@8 

U některých starších verzí uzlů (které jsou pouze keg) může být nutné je propojit pomocí --force a --overwrite možnosti:

brew link --force --overwrite node@8 

Komentáře

  • nejlepší odpověď zde.
  • Upozorňujeme, že můžete být vyzváni k “ odpojení “ existující verzi uzlu, než budete moci úspěšně nainstalovat jednu z dalších verzí, které byly uvedeny (podle pokynů výše). “ odpojením “ necháváte druhou verzi fyzicky nainstalovanou ve vašem systému, ale ta, kterou nainstalujete (po zrušení propojení), se stane “ výchozí “ verze ve vašem systému. Pokud jste nainstalovali brew install node, možná budete muset zadat brew unlink node. Pak byste mohli udělat brew install homebrew/versions/node4-lts (což byste měli vidět jako verzi uvedenou podle pokynů v této odpovědi).
  • Místo homebrew/versions/node06 it ‚ s nyní homebrew/versions/node6-lts. Rovněž jsem brew link node6-lts.
  • Aktualizoval jsem svou odpověď tak, aby odrážela nejnovější změny v pivovarnictví. =

Děkujeme!

  • ale jak můžeme nainstalovat konkrétní verzi, jako je uzel 8.2.1 pomocí brew?
  • Odpovědět

    Zde je krok za krokem.

    Chcete-li zobrazit aktuální verzi uzlu

    $ node --version 

    Zobrazení dostupných verzí uzlů

    $ brew search node 

    Odpojení od aktuální verze

    $ brew unlink node 

    Nainstalujte libovolnou verzi, např. 8

    $ brew install node@8 

    Propojení nainstalované verze

    $ brew link node@8 

    Chcete-li znovu zobrazit aktuální verzi uzlu

    $ node --version 

    Komentáře

    • Přesně to, co jsem potřeboval
    • Jak tento problém vyřešit? brew link node @ 10 Varování: node @ 10 je pouze keg a musí být propojen s –force Pokud potřebujete Chcete-li mít nejprve tento software ve své PATH, zvažte spuštění: echo ‚ export PATH = “ / usr / local / opt / node @ 10 / bin: $ PATH ‚ > > ~ / .bash_profile
    • nepracuje ‚ nefunguje v systému Mac OS 10.13.5, zobrazuje se chyba stackoverflow.com/questions/53043476/…
    • jak mohu nainstalovat konkrétní verzi uzlu, mám nainstalovat verzi uzlu “ 10.17.0 “ s příkazem brew install node @ 10, ale musím nainstalovat “ 10.15.3 „.

    Odpověď

    Od tohoto PR pro homebrew / verze a tento PR pro homebrew , odpovědi zahrnující brew tap homebrew/versions nebo *-lts balíčky již nefungují.

    Správná odpověď je nyní:

    brew install node@<version> 

    Kde <version> je 0.10, 0.12, 4 atd. Například instalace Node.js v6 (od tohoto nejnovější verze LTS):

    brew install node@6 

    Možná budete muset před těmito příkazy spustit brew update zajistěte, aby byly k dispozici tyto nové verze se vzorci. Pokud máte nainstalovanou jinou verzi vzorce node, musíte nejprve spustit brew unlink node.

    Komentáře

    odpověď

    brew versions musí být nainstalován v určitém okamžiku po instalaci brew.

    $ brew tap homebrew/boneyard 

    Potom můžete použít příkaz brew versions, jak předpokládají pokyny.

    Komentáře

    • homebrew/boneyard je zastaralý a bude nahrazen github.com/Homebrew/homebrew-versions as z března 2015. Nainstalujte pomocí brew tap homebrew/versions.
    • S homebrew/versions získáte název verze balíčku: brew search node => leafnode node node010 node04 node06 node08 nodebrew .... Stejně tak

    následovanýbrew link --overwrite node010k instalaci verze 0.10 Node.JS.

  • Možná budete muset brew unlink node před vámi brew install node010
  • odpověď

    FYI, pokud jste dříve měli nainstalovanou starou verzi a nemáte spuštěnou brew cleanup (která odstraní staré verze), můžete přepnout pomocí něčeho jako brew switch node 5.7.0

    Všechny nainstalované verze uzlu lze zobrazit spuštěním brew info node nebo ls -l /usr/local/Cellar/node/

    Viz cheat sheet příkazu brew: http://ricostacruz.com/cheatsheets/homebrew.html

    Komentáře

    • Funguje od 2017/12! Homebrew 1.4.0-17-gc912d26

    Odpověď

    Tady a na dalších místech existuje spousta odpovědí řekněme použít homebrew-verze, ale to vám dává velmi omezené možnosti, jakou verzi Node si můžete nainstalovat.

    Je mnohem jednodušší používat NVM a umožňuje vám velmi snadno přepínat mezi verzemi.

    homebrew install nvm 

    Poté postupujte podle pokynů v pokynech – mkdir ~/.nvm a do svého a source .bash_profile

    Pak jednoduše spusťte nvm install <version> pro všechny verze, které potřebujete. Pak nvm use <version> přepnout.

    Komentáře

    • Toto není přijatá odpověď, ale je to jediná ten, který pro mě fungoval. Přál bych si, abych tento vyzkoušel jako první, protože bych ušetřil spoustu času.

    Odpovědět

    Pokud to potřebujete právě speciálně pro Node, můžete použít nvm . Je velmi výhodné, pokud s Node hodně pracujete.

    Komentáře

    • Podle nvm dokumenty brew a nvm nejsou podporovaným combo. Okomentoval jsem to zde. github.com/angular/angular-cli/issues/… I ‚ zajímají se o tom válečné příběhy. Protože na povrchu se zdá, že to funguje navzdory skutečnosti, že ‚ s “ není podporováno “

    Odpověď

    Upřednostňovaným způsobem ve světě NodeJS je použití nástroje n

    • Instalace: npm install -g n
    • Instalovat uzel 8.8.4 n 8.8.4
    • Seznam všech lokálně dostupných verzí uzlů a vyberte jednu: n

    Vypadá to podobně jako nvm, ale měl jsem problémy s nvm a n fungoval po vybalení z krabice.

    Odpověď

    Můžete to udělat bez homebrew.

    Uzel můžete odinstalovat a poté nainstalovat ručně.

    Musíte si stáhnout aktuální spuštěnou verzi. Zde je seznam .

    Stáhněte si node-v {your-current-version-number} .tar.gz, rozbalte jej a pak přejděte na příkazový řádek.

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

    Chcete-li jej odinstalovat sudo make uninstall

    Poté si stáhněte verzi, kterou chcete nainstalovat, a postupujte podle výše uvedených kroků.

    Z tohoto příspěvku na blogu

    Komentáře

    • +1 této odpovědi.FWIW, právě se mi podařilo zkopírovat neotevřenou bin/ složku do mého PATH, aby to fungovalo.
    • Ještě lépe si odtud můžete stáhnout soubor .pkg a poklepáním na něj instalaci nainstalujete.

    Odpovědět

    Pokud jste při instalaci jakékoli verze uzel, stačí stáhnout soubor .pkg pro OSX z https://nodejs.org/dist/[VERSION_YOU_NEED] . To mi jen pomáhá přeinstalovat uzel.

    Odpovědět

    Pojďme zobrazit obrázky, které máte verzi 0.12. *. Instalace ( downgrade) 0,10 verze uzlu hodí vawn v OSX, musíte:

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

    Seznam všech verzí uzlu je zde

    Odpověď

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

    Můžete přejít sem a nainstalovat požadovanou verzi.

    Před instalací možná budete chtít spustit brew unlink node odpojení aktuální verze.

    Komentáře

    • Jaká by byla výhoda, kdybyste to dělali tímto způsobem, na rozdíl od pomocí brew (jak popisuje několik dalších odpovědí) nebo odinstalací uzlu a následnou manuální instalací (jak je popsána odpověď @ Terente-Ionut-Alexandru ‚)?
    • @ Verze JohnN brew jsou nyní zastaralé. Jeho alternativy není snadné pochopit. Také je to trochu omplex prostřednictvím brew k instalaci přesné verze.
    • @ Paweł-Gościcki ‚ odpověď (nejlépe hodnocená, se 140 hlasy) se zdá být velmi srozumitelná a vůbec ne složité – což odpovídá mým nedávným zkušenostem s brew a různými verzemi vzorců. Chtěl bych říci, že vaše odpověď ‚ se nezdá, že by přidala ke všemu, co již ‚ nebylo řečeno v jiných odpovědích – pokud tam ‚ je důvod odpojit + ručně nainstalovat místo odinstalovat + ručně nainstalovat, jak navrhl Terente?
    • @JohnN Samozřejmě, je to snadno pochopitelné. Ale budete omezeni možnostmi, které vám vyhledávání hledání dá. Např. pokud chcete přesně uzel 4.4.6, ale brew bude poskytovat pouze možnost node @ 4. Proto.
    • Existují, myslím, 3 slušné odpovědi na otázku: (1) použijte brew, (2) použijte nvm a (3) odinstalujte a ručně nainstalujte. To, o co se ‚ pokouším přimět vás, je vysvětlit, proč vaše odpověď přispívá k těmto existujícím odpovědím. Proč si myslíte, že odpojení + ruční instalace je lepší než stávající odpovědi? Konkrétně, proč máte pocit, že * ruční odpojení * + ruční instalace je lepší než * ruční odinstalování * +, jak naznačuje odpověď Terente ‚ s?

    Napsat komentář

    Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *