De som inte känner till mjukvaruutveckling kan vara förvånad över hur många så kallade grå områden där kan vara. Även om du vet att du vill skriva, säg en Rails app, har du flera fler specifika beslut att göra. Vilken databas ska du använda? Vilken version av Ruby? Vilka ädelstenar ska installeras? Kommer det att vara i konflikt med andra Ruby versioner eller pärla uppsättningar? RVM, Ruby Version Manager, kan ta hand om det. RVM tillåter dig att installera, hantera och växla mellan Ruby-versioner på flyg så att du kan utveckla och testa programvara i flera Ruby-versioner utan problem. Den här guiden visar hur du installerar RVM på Ubuntu och använder den för att hantera din Ruby-miljö.

Obs! Det här är inte en artikel om "How To Code Ruby", det handlar bara om att använda RVM för att hantera dina Ruby-installationer.

Hur det fungerar

Den vanligaste RVM-inställningen går något så här: En användare installerar RVM som en applikation, antingen systemomfattande eller i hemmet. Via RVM installeras användarens utvalda Ruby-versioner automatiskt till den användarens hem. Med hjälp av RVM-kommandon anger användaren vilken version de skulle vilja ha vid varje tillfälle. Alla samtal som görs till Ruby under den tiden är dirigerad till lämplig Ruby-körbar och kör som normalt. Det finns ingen virtualisering eller komplexa wrappers eller chroots att oroa sig för, det verkar mer eller mindre som en smart serie av symlinks och miljövariabler som leder alla Ruby-samtal till den valda versionen.

Installation

Först behöver vi några förutsättningar. Din standard Ubuntu-installation ska innehålla mycket av vad som behövs, men vissa nödvändiga paket kan saknas. För att bygga RVM korrekt installerar du följande paket från Ubuntu Software Center eller från kommandoraden med:

 sudo apt-get install git build-essential bison openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev 

Det här läser vårt system för att bygga och installera RVM och Ruby korrekt. Vi behöver inte göra den vanliga konfigurationen / göra rutinen på den här, eftersom RVM faktiskt innehåller ett enkelt byggnadsskript som ska göra jobbet för dig. När alla ovanstående beroenden har installerats, kör följande från kommandoraden:

 bash <<(curl http://rvm.beginrescueend.com/releases/rvm-install-head) 

Detta hämtar källan och levererar ett bra meddelande från RVMs utvecklare.

Lägga till en Ruby Version

Vid denna tidpunkt har du RVM men ingen användbar Ruby-installation för att köra med den. Att få RVM att installera en är lika enkelt som ett kommando med ett enda skal. För det första exemplet installerar vi 1.8.7-stabila versionen från källan med ett RVM-kommando:

 rvm installera 1.8.7 

RVM hanterar hela processen, inklusive konfiguration, sammanställning och installation av RubyGems.

Post-installation

När det är klart är det lite miljöinställningar vi måste göra. För att RVM ska kunna avlyssna Ruby-samtal på rätt sätt måste vi lägga till följande rad till .bashrc eller .bash_profile :

 [[-s "$ HOME / .rvm / scripts / rvm"]] &&. "$ HOME / .rvm / scripts / RVM" 

Starta om ditt skal och det ska träda i kraft. För att testa, skriv bara in

 skriv rvm | huvud -1 

Vilket ska svara med "rvm är en funktion" . Om inte, bryts något längs linjen.

Hantera Ruby Versioner

Nu när allt är upprättat kan vi faktiskt använda RVM! Om du antar att du har installerat version 1.8.7 som i exemplet ovan kan den väljas med

 rvm användning 1.8.7 

RVM bör ge dig ett svar som bekräftar ditt val och visar dig placeringen av Ruby-körbar. Detta kan verifieras senare med hjälp av standardsystemet vilket kommando.

Ytterligare versioner kan installeras på samma sätt, och ädelstenar kan läggas till och tas bort från RVM-versioner exakt som de skulle i ett normalt system Ruby installera. Du kan välja din version på flugan för att vara säker på att din app fungerar som avsedd utan att någonsin oroa dig för konflikter och miljömatchningar. Njut av!