मैं एक शुरुआत के साथ make
हूं और मैं सोच रहा हूं कि कब उपयोग करना है make clean
।
एक सहकर्मी ने मुझे बताया कि वृद्धिशील निर्माण make
फाइलों के टाइमस्टैम्प पर आधारित हैं। इसलिए, यदि आप अपने VCS में किसी फ़ाइल के पुराने संस्करण की जांच करते हैं, तो उसके पास एक "पुराना" टाइमस्टैम्प होगा और इसे "इस फ़ाइल को पुनः स्थापित करने की कोई आवश्यकता नहीं" के रूप में चिह्नित किया जाएगा। फिर, वह फ़ाइल अगले बिल्ड में शामिल नहीं होगी।
उसी सहयोगी के अनुसार, यह उपयोग करने का एक कारण होगा make clean
।
वैसे भी, मुझे लगभग make clean
StackExchange प्रश्नों से "जब उपयोग करना है " प्रश्न का उत्तर मिला, लेकिन मेरे अन्य प्रश्न तब हैं:
वृद्धिशील
make
उदाहरणों के लिए फाइलों की टाइमस्टैम्पों पर निर्भर न होकर एसएचए -1 का उपयोग करके बनाता है ? उदाहरण के लिए, Git दिखाता है कि हम सफलतापूर्वक निर्धारित कर सकते हैं कि क्या SHA-1 का उपयोग करके किसी फ़ाइल को संशोधित किया गया था।
क्या यह गति के मुद्दों के लिए है?
make
तो आपका सॉफ़्टवेयर नहीं टूटेगा, हालांकि make
नए संस्करणों में पीछे की संगतता का प्रयास करता है। बिना किसी अच्छे कारण के मुख्य व्यवहार में बदलाव करना बहुत विपरीत है। और तारीखें बताती हैं कि यह मूल रूप से SHA-1 का उपयोग करने के लिए क्यों नहीं बनाया गया था, या जब यह उपलब्ध हो गया make
था तब इसे वापस लेना आसान नहीं था ( तब तक पहले से ही दशकों पुराना था)।
make
70 के दशक में बनाया गया था। SHA-1 90 के दशक में बनाया गया था। 00 में Git बनाया गया था। आखिरी चीज जो आप चाहते हैं वह कुछ अस्पष्ट बिल्ड के लिए है जो 30 वर्षों से काम कर रहे थे अचानक असफल हो गए क्योंकि किसी ने कोशिश की और परीक्षण किए गए सिस्टम के साथ सभी आधुनिक जाने का फैसला किया।