यह एक उपन्यास विचार होता है (चूंकि मैं नहीं मिला है किसी भी समाधान या किसी को भी इसे लागू होने के बाद) मुझे लगता है में डिबग लाइनों को हटाने के लिए भूल नहीं करने के लिए कैसे ...कोड
एक खोल स्क्रिप्ट है कि जब भी आप गिट करते हैं या जो कुछ भी आपको बताएगा तो स्वचालित रूप से चलता है यदि आप अपनी परियोजना में कोड की किसी भी डीबगिंग या विकास एनवी विशिष्ट लाइनों को मिटाना भूल गए हैं।
उदाहरण के लिए:
अक्सर (मेरी रूबी परियोजनाओं में) मैं, कभी कभी
puts params.inspect
या
raise params.inspect
भी तरह उत्पादन चर के कोड की लाइनें छोड़ देंगे मैं विभिन्न विधियों का उपयोग करूंगा ताकि मैं आसानी से ऐसे मामलों जैसे प्रभावों को देख सकूं जैसे देरी_बॉज का उपयोग करना जहां मैं बिना किसी विधि के विधि को कॉल करूंगा विकास के दौरान रखना।
समस्या कभी-कभी मैं उन विधियों को वापस बदलना भूल जाता हूं या पैरा को बढ़ाने के लिए कॉल को मिटाना भूल जाता हूं। निरीक्षण और मैं अनजाने में उस कोड को दबा दूंगा।
तो मैं शायद सोचा था कि सबसे सरल समाधान के एक विकास केवल/डिबग पंक्ति के रूप में है कि लाइन पर चिह्नित करने में इस तरह के
raise params.inspect #debug
संक्षेप में के रूप में किसी भी तरह के डिबगिंग लाइन के लिए एक टिप्पणी जोड़ने के लिए किया गया था। फिर एक शेल स्क्रिप्ट में जो गिट प्रतिबद्धता जैसे किसी अन्य कमांड से पहले चलता है, वह उस #debug टिप्पणी के लिए सभी नवीनतम संशोधित फ़ाइलों के माध्यम से खोजने के लिए अजीब या grep का उपयोग कर सकता है और निष्पादन रोक सकता है और आपको सतर्क कर सकता है। हालांकि मुझे शैल स्क्रिप्टिंग के बारे में बहुत कुछ पता नहीं है इसलिए मैंने सोचा कि मैं मदद मांगूंगा :)
आपको स्क्रिप्ट स्क्रिप्टिंग भाषा में स्क्रिप्ट लिखने की आवश्यकता नहीं है, यदि आप चाहें तो रूबी का उपयोग करके इसे लिख सकते हैं। – jcollado
जावा में, यह जोड़ने के लिए एक अच्छा अभ्यास है कि (log.isDebugEnabled) {डीबग लॉगिंग ..} मुझे यकीन नहीं है कि ऐसा कुछ खोल में मौजूद है या नहीं। –
@ क्रिकांत्रेडिक्स - लॉगबैक ढांचा स्वयं को उस चेक में बनाता है ताकि आप 'if' कथन के साथ कोड को और अधिक खराब करने के बजाय' log.debug() 'का उपयोग कर सकें। – cdeszaq