2013-06-17 2 views
9

मैं वर्तमान में रूबीज़ (मुख्य रूप से 1.9.एक्स और 1.8.7) के बीच स्विच के लिए अपनी विकास मशीन पर rvm का उपयोग कर रहा हूं। तब मैं chruby पर आया और पाया कि "आकर्षक cd" सुविधा आकर्षक नहीं है।क्या chruby और chgems आरवीएम के रत्न को प्रतिस्थापित कर सकते हैं?

chruby + chgemsrmv की रत्न सुविधा को प्रतिस्थापित कर सकते हैं?

से पहले:

$ rvm 1.8.7 

मेरे पुराने रेल परियोजनाओं के लिए जवाहरात के 1.8.7 सेट के साथ 1.8.7 रूबी के लिए स्विच करेंगे। और:

$ rvm 1.9.3 

मेरी नई रेल परियोजनाओं के लिए 1.9.3 रत्नों के सेट के साथ रूबी 1.9.3 पर स्विच करेगा।

इसे chruby और chgems द्वारा कैसे प्राप्त किया जा सकता है?

उत्तर

10

मैं इस प्रश्न पर एक रन लेगा क्योंकि मैं Chruby और Chgems का उपयोग करता हूं। मैं मैक ओएस एक्स पर हूं, और मेरे पास होमब्रू के माध्यम से chruby स्थापित है।

मेरी .bashrc फ़ाइल में:

source /usr/local/share/chruby/chruby.sh 
chruby ruby-2.0.0-p195 

स्रोत लाइन Chruby के लिए configuration का हिस्सा है।

दूसरी पंक्ति रूबी के default version को मेरे सिस्टम के लिए सेट करती है (मेरे मामले में रूबी 2.0.0)। नोट: Chruby 0.3.6 के रूप में यह .bash_profile के बजाय .bashrc में है।

मेरी .bash_profile में:

source /usr/local/share/chruby/auto.sh 

इस लाइन Chruby में Auto-switching सुविधा सेट करता है।

मेरे पास अभी भी रूबी 1.9.3 का उपयोग करके कुछ परियोजनाएं हैं इसलिए उन ऐप्स के लिए मेरे पास ऐप की रूट में .ruby-version फ़ाइल है। एक लाइन के साथ ruby-1.9.3


आप अपने अनुप्रयोग, प्रकार chgems के लिए निर्देशिका में सीडी और फिर आप को स्थापित करने और क्या न बंडल कर सकते हैं। आप चीजों की पुष्टि कर सकते gem env

दर्ज करके काम कर रहे हैं मेरे जीवन आसान बनाने के लिए मैं उदाहरण के लिए .bash_aliases कहा: alias myapp='cd ~/Sites/myapp && chgems'


मैं इन उपयोग किया गया है एक साथ अब और वास्तव में कई महीनों के लिए संयोजन की तरह और हां, जो मैं बता सकता हूं कि चग्म्स आरवीएम की रत्न की विशेषता को दोहराने के लिए एक महान काम करता है। मैं अत्यधिक अनुशंसा करता हूं कि आप दोनों Chruby और Chgems परियोजनाओं के लिए दस्तावेज़ पढ़ें क्योंकि यह सब कवर किया गया है। आपके मामले में, आप एक डिफ़ॉल्ट रूबी सेट नहीं करना चाहते हैं और बस प्रत्येक ऐप के लिए सेट करने के लिए .ruby-version का उपयोग करें।

+0

क्रुबी 0.3.6 की रिहाई के परिणामस्वरूप परिवर्तनों को दर्शाने के लिए 24 जून को मेरा उत्तर अपडेट किया गया। – memoht

+0

कोई भी https: // github का उपयोग कर सकता है।com/tonchis/gst यह chgems – dakull

+2

की तुलना में chruby के साथ बेहतर काम करता है कुछ भी योग्य नहीं है: chgems को [gem_home] (https://github.com/postmodern/gem_home#readme) के पक्ष में बहिष्कृत कर दिया गया है। – memoht

संबंधित मुद्दे