2012-07-23 17 views
6

रेल में 3 rails s आह्वान बंडलर ताकि आप bundle exec rails s करने की ज़रूरत नहीं है करता है या bundle exec आपकी ऐप्लिकेशन Gemfile वातावरण में rails s चलाने के लिए आवश्यक है?रेल या बंडल कार्यकारी रेल रों

अद्यतन यह समझा जाता है कि bundle exec क्योंकि विभिन्न रेक संस्करणों की रेक कार्य से पहले किया जाना चाहिए। अधिक जानकारी के लिए http://railsapps.github.com/installing-rails-3-1.html देखें। इस सवाल के बारे में लिपियों रेल है, जैसे:

rails s 
rails server 
rails c 
rails console 

^bundle exec से पहले इन रेल स्क्रिप्ट उपयोग किया जाना चाहिए, या बंडलर रेल आदेश से शुरू होता है?

+0

मैं हमेशा 'उर्फ रेल =' बंडल निष्पादन रेल 'जोड़ता हूं; उर्फ रेक = 'बंडल exec रेक' मेरे bashrc करने के लिए। समस्या सुलझ गयी। – meagar

+0

मुझे नहीं लगता कि 'उर्फ रेल =' बंडल निष्पादन रेल 'आवश्यक है: देखें: [http://railsapps.github.com/installing-rails-3-1.html ](http://railsapps। github.com/installing-rails-3-1.html) और [http://yehudakatz.com/2011/05/30/gem-versioning-and-bundler-doing-it-right/](http: //yehudakatz.com/2011/05/30/gem-versioning-and-bundler-doing-it-right/) – dylanjha

उत्तर

9

आप रेल में इस व्यवहार को मिलना चाहिए> = 3.1 हालांकि आप क्योंकि आप रेक के एक पुराने संस्करण का उपयोग कर किया जा सकता है सावधान रहना चाहिए:

यह रेक के बजाय कमांड बंडल कार्यकारी रेक उपयोग करने के लिए अच्छा व्यवहार है ताकि आप डिफ़ॉल्ट संस्करण के बजाय अपने gemfile में निर्दिष्ट रेक के संस्करण का उपयोग करेंगे (या Gemfile.lock फ़ाइल में निर्दिष्ट निर्भरता)। उदाहरण के लिए, रेक डीबी के बजाय: माइग्रेट, रन बंडल निष्पादन रेक डीबी: माइग्रेट करें।

आपको क्या पता होना चाहिए: सुनिश्चित करें कि आप रेल 3.1 स्थापित करने से पहले रेक 0.9.2.2 (या नए) मणि अद्यतन रेक के साथ उपयोग कर रहे हैं। और रेक के बजाय बंडल निष्पादन रेक का उपयोग करें।

से उद्धरित: http://railsapps.github.com/installing-rails-3-1.html

यह विपरीत तरह लग रहा है यह पटरियों के लिए सच को आदेश:

रेल आदेश से पहले बंडल कार्यकारी नहीं चला, रेल पहले से ही Bundler की उपस्थिति की जांच करता है Gemfile के माध्यम से और बंडल निष्पादन के ऊपरी हिस्से के बिना सब कुछ सेट अप करता है। रेल कमांड नियम के लिए एकमात्र अपवाद है।

से उद्धरित: - "! रेल 3 बंडलर साथ समर्थन में पकाया ... Bundler पारदर्शी रूप से अपने निर्भरता प्रबंध कर रहा है के साथ आता है" http://blog.wyeworks.com/2011/12/27/bundle-exec-rails-executes-bundler-setup-3-times

+0

मैं समझता हूं कि 'बंडल निष्पादन' रेक कार्यों के लिए एक अच्छा विचार है लेकिन रेल स्क्रिप्ट के बारे में क्या है, रेल सर्वर 'या' रेल कंसोल '? – dylanjha

+0

भ्रम के लिए खेद है ... मैंने सही प्रश्न को दर्शाने के लिए इस उत्तर को संपादित किया है। – barancw

+0

इसे साफ़ करने के लिए धन्यवाद! – dylanjha