मेरे पास एक एएसपी.नेट, एमवीसी 4, सी # एप्लिकेशन है जिसे मैंने विजुअल स्टूडियो 2012 में विकसित किया है। अब तक मैंने वीएस पब्लिश सुविधा का उपयोग करके एक एज़ूर वेबसाइट पर सफलतापूर्वक तैनात किया है।GitHub के माध्यम से Azure को एक MVC4 C# एप्लिकेशन को तैनात करना। मेरे .gitignore में क्या होना चाहिए?
अब मैंने Azure वेबसाइट पर गिट प्रकाशन सफलतापूर्वक स्थापित किया है और इसे गिटहब भंडार से जोड़ा है। मैंने अपनी स्थानीय मशीन पर एक भंडार शुरू किया है और पूरे लॉट को गिटहब रेपो में धक्का दिया है। Azure तुरंत यह सब इसे खींच लिया जाना चाहिए।
अब, मैं उम्मीद कर रहा था कि एक .gitignore फ़ाइल की अनुपस्थिति में यह पूरी तरह से काम नहीं करेगा और मैं सही था।
तो मेरा प्रश्न है: क्या, मेरे स्थानीय विजुअल स्टूडियो कार्यशील निर्देशिका से मुझे भंडार से बाहर निकलना चाहिए? अर्थात। मेरे .gitignore में क्या होना चाहिए?
इसके अलावा, क्या कोई अन्य कारक है जो मुझे Azure वेबसाइट पर काम करने के लिए आवेदन करने की कोशिश में होना चाहिए?
नोट्स:
1. मुझे https://gist.github.com/2589150 पर एक अच्छा नज़र था, लेकिन यह वीएस कार्य निर्देशिका में जो देख रहा है उसके साथ मेल नहीं लगता है।
2. https://github.com/github/gitignore/blob/master/CSharp.gitignore करीब लगता है और मैं वर्तमान में यह समझने की कोशिश कर रहा हूं कि इसकी कौन सी बिट्स मेरी स्थिति पर लागू होती हैं। उदाहरण के लिए, यदि मैं bin/* को बहिष्कृत करता हूं तो एप्लिकेशन Azure पर तैनाती में विफल रहता है।
अद्यतन:
1) मैं अपने web.config फ़ाइल को संशोधित करके कस्टम त्रुटियों बंद के रूप में @levelnis ने सुझाव दिया:
<configuration>
<system.web>
<customErrors mode="Off"/>
</system.web>
</configuration>
मैंने पाया मेरी समस्या डेटाबेस कनेक्शन स्ट्रिंग जो नहीं रह गया था था वीएस प्रकाशन सुविधा द्वारा Azure में परिवर्तित किया जा रहा है। मुझे इसे सीधे संशोधित करना था और रेपो को प्रतिबद्ध करना था।
शीर्ष युक्ति: मुझे एक अलग प्रकाशित प्रोफ़ाइल के साथ अस्थायी Azure वेबसाइट पर प्रकाशित करके एज़ूर पर वीएस प्रकाशन सुविधा को देखने के द्वारा सही स्ट्रिंग मिल गई।
इससे समस्या ठीक हुई और तैनाती बहुत आसानी से चली गई।
2) इस समय तक मैं अपने .gitignore फ़ाइल के रूप में निम्नलिखित था:
# Build Folders obj/ # User-specific files *.user # SQL Server files App_Data/*.mdf App_Data/*.ldf
ऐसा लगता है कि मैं शायद सफ़ाई खातिर एक बहुत अधिक बाहर कटौती कर सकते हैं, लेकिन इस के सही संचालन को प्रभावित नहीं किया गया था गिटहब के माध्यम से तैनाती जो अब वास्तव में बेहद सुचारु रूप से काम करता है।
आखिरकार, उन्हें हटाए बिना रेपो से फ़ाइलों को हटाने के लिए आसान गिट कमांड। उदाहरण के एक जोड़े:
git rm -r --cached obj/* git rm -r --cached */*.user
और फिर स्पष्ट रूप से बताया प्रतिबद्ध होते हैं और आगे बढ़ाने से पहले .gitignore करने के लिए इन जोड़ें।
तो यह तब भी आपके एमवीसी ऐप तक नहीं पहुंच रहा है? क्या आपने तैनाती के बाद ऐप को पुनरारंभ किया था? मैं खुद को हर बार ऐसा कर रहा हूं। आप इसे Azure प्रबंधन पोर्टल में डैशबोर्ड से कर सकते हैं। एक बार फिर से शुरू करने के बाद, ब्राउज़र को बार-बार रीफ्रेश करें जब तक आप ए) 503 त्रुटि देखें, बी) देखें कि 502 त्रुटि सी द्वारा प्रतिस्थापित किया गया है) फिर से रीफ्रेश करें और ऐप पूल पुनरारंभ करें देखें। पोर्टल आपको बताएगा कि यह पुनरारंभ किया गया है लेकिन ऐप पूल वास्तव में रीसायकल करने में लगभग 30-60 सेकंड लगते हैं। – levelnis
ठीक है, जोड़कर मुझे बहुत मदद मिली है। ऐसा लगता है कि यह एक डेटाबेस मुद्दा है। धन्यवाद! एक बार मैंने इसे परिष्कृत करने के बाद भी मैं अपना अंतिम .gitignore भी पोस्ट करूंगा। –
harunahi