2011-10-07 9 views
16

पर गिटिनोर फाइलें मैंने एक सिनात्रा ऐप बनाया, जिसे हेरोकू पर होस्ट किया जाएगा, और स्रोत गिटहब पर होगा। समस्या यह है कि मेरे पास एपीआई कुंजी के साथ एक फ़ाइल है, जो वर्तमान में .gitignore में है। क्या कोई तरीका है, कि मैं अपने रिपो को मुख्य फ़ाइल के साथ उसकेोकू में धक्का दे सकता हूं और गिटहब को दबाते समय फ़ाइल को बाहर कर सकता हूं?पुशिंग। विशिष्ट रिमोट

अग्रिम धन्यवाद!

उत्तर

15

यह सिर्फ तैनाती के लिए एक अलग शाखा बनाए रखने के लिए संभव है, लेकिन यह इसे ठीक से बनाए रखने के लिए ज्यादा अनुशासन लेता है:

  1. जोड़ें उत्पादन शाखा है कि कॉन्फ़िग फ़ाइल (git add -f अपने शामिल नहीं bybass में जोड़ता है करने के लिए एक प्रतिबद्ध)।
  2. अपने उत्पादन शाखा को अपडेट करने के बारे में अन्य शाखाओं (जैसे मास्टर) मर्ज करें। तो कभी नहीं कुछ और में अपने उत्पादन शाखा विलय
    लेकिन, आप चाहिए, या किसी भी "उत्पादन के लिए प्रतिबद्ध" पर आधारित शाखाओं शुरू (जिसका वंश अपने शामिल प्रतिबद्ध "कुंजियों को जोड़ने")।

एक आसान तरीका है अपने प्रोटोकॉल मूल्यों को अपने उदाहरणों में संवाद करने के लिए पर्यावरण चर का उपयोग करने के हेरोकू के रिवाज को अपनाना। Configuration and Config Vars पर डॉक्स देखें:

heroku config:add KEY1=foobar KEY2=frobozz 

फिर अपने प्रवर्तन कोड में ENV['KEY1'] और ENV['KEY2'] के माध्यम से मूल्यों का उपयोग या भी आप उन्हें जरूरत है। अपने गैर-हेरोकू परिनियोजन का समर्थन करने के लिए, यदि आप पर्यावरण चर मौजूद नहीं हैं तो आप या तो समान वातावरण चर परिभाषित कर सकते हैं या अपनी मौजूदा कॉन्फ़िगरेशन फ़ाइलों को पढ़ने के लिए वापस आ सकते हैं।

+0

धन्यवाद, हेरोकू envvars जाने का रास्ता है :) – skazhy

+0

पर्यावरण चर के साथ आपको "https://devcenter.heroku.com/articles/labs-user-env-compile" की आवश्यकता होगी, यदि आपके चर स्लग संकलन के दौरान उपयोग करने की आवश्यकता है। –

3

Figaro मणि इस मुद्दे का प्रबंधन करने के लिए एक अच्छा तरीका प्रदान करता है। यह मूल रूप से हरोकू के पर्यावरण परिवर्तनीय दृष्टिकोण को स्थानीय रूप से अनुकरण करता है, और आपके विकास पर्यावरण और हरोकू के बीच अपनी चाबियाँ सिंक में रखना आसान बनाता है।