2013-06-19 6 views
80

ग्रैडल .gradle नामक फ़ोल्डर बनाता है। क्या मुझे इसे अपने संस्करण नियंत्रण (यानी गिट) के साथ ट्रैक करना चाहिए?क्या .gradle फ़ोल्डर को संस्करण नियंत्रण में जोड़ा जाना चाहिए?

अधिक महत्वपूर्ण बात, क्यों/क्यों नहीं?

उत्तर

85

क्या मुझे .gradle निर्देशिका को ट्रैक करना चाहिए?

नहीं। इसे सुरक्षित रूप से अनदेखा किया जा सकता है।


मुझे इसे क्यों अनदेखा करना चाहिए?

  • यह वहाँ
  • में बड़ा मशीन
  • हो सकता है विशिष्ट डेटा मिलता है और बाइनरी फ़ाइलें से भरा हो सकता है:

    यह विशुद्ध रूप से जानकारी कैशिंग के लिए, आप उसे अपने रेपो में क्योंकि चाहते हैं है

  • वहाँ में मंथन का एक बहुत (आप लगातार वहाँ में फ़ाइलों में परिवर्तन करने से होगी) है
  • सब कुछ वहाँ कर सकते हैं पूरी तरह से फिर से उत्पन्न किया जा में जब भी यह वैसे भी जरूरत है

यह मूल रूप से एक अस्थायी निर्देशिका है जो ग्राडल आपके स्रोत कोड के बीच में गिर रहा है (क्यों ग्रैडल सोचता है कि ऐसा करने के लिए एक उचित बात है)।

आप स्विच के नाम से निर्देशिका की "कैश निर्देशिका" प्रकृति को बता सकते हैं जो आपको यह कहां बदलता है: "--project-cache-dir"।

हालांकि मुझे अपने स्रोत पेड़ में द्विआधारी फाइलों से नफरत है, लेकिन मैं आमतौर पर अपनी अनदेखी फ़ाइल में निर्देशिका जोड़ना समाप्त करता हूं क्योंकि लाइन के साथ कहीं मैं कुछ कमांड लाइन से या मेरे आईडीई या स्विच से स्विच का उपयोग करना भूल जाऊंगा और फिर निर्देशिका के साथ किसी भी तरह से निपटने के लिए खत्म हो गया।


मैं इसे कैसे अनदेखा करूं?

गिट उपयोगकर्ता .gradle के साथ .gitgnore फ़ाइल में एक लाइन जोड़ सकते हैं और गिट उस नाम के साथ किसी भी निर्देशिका में सभी फ़ाइलों को अनदेखा कर देगा।

Mercurial उपयोगकर्ता .hgignore फ़ाइल को देखना चाहते हैं।

अन्य संस्करण नियंत्रण प्रणालियों के लिए, दस्तावेज़ीकरण का संदर्भ लें - उनके पास इसका समर्थन करने के लिए एक सुविधा है।

+0

एंड्रॉइड में कनवर्ट करने वाले सभी दुनिया के आईओएस डीबीएस, धन्यवाद! :) – Fattie

11

.gradle फ़ोल्डर में आपके ग्रेडल बिल्ड (जैसे कैश आउटपुट/इनपुट जानकारी) के बारे में अलग-अलग गणना की गई जानकारी शामिल है। आपको निश्चित रूप से उस फ़ोल्डर को अपने संस्करण नियंत्रण प्रणाली में नहीं देखना चाहिए।

2

आपको .gradle फ़ोल्डर रखने की आवश्यकता नहीं है।

क्योंकि एक बार जब आप दोबारा निर्माण कमांड निष्पादित करते हैं, तो आप लगभग वही बना सकते हैं।

लेकिन जब आप .gradle के अंतर्गत gradle.setting फ़ाइल का उपयोग करते हैं तो आपको इसे प्रोजेक्ट के रूट फ़ोल्डर में स्थानांतरित करने की आवश्यकता हो सकती है।

0

जब हम ग्रेडल शुरू करते हैं तो यह आपके होम निर्देशिका के अंदर .gradle फ़ोल्डर बनाता है। इसमें मूल (आपके सिस्टम के बारे में जानकारी) और कैश शामिल हैं। कैश में प्लगइन और अन्य सभी जार निर्भरताएं शामिल हैं।

जब हम उस समय परियोजना को पहली बार बनाते हैं तो यह निर्भरता और प्लगइन डाउनलोड करता है और उन्हें यहां दबाता है। अगली बार जब हमें उनकी ज़रूरत होती है, तो यह यहां से मिलता है। यहां तक ​​कि जब हमें कोड (=> ग्रेडल ग्रहण) को संकलित करने के लिए ग्रहण में उनकी आवश्यकता होती है, तो इसकी निर्भरता कैश

से जोड़ दी जाती है क्योंकि यह आपके द्वारा क्रमबद्ध होने पर अद्यतन और जोड़ते रहेंगे। इसलिए मुझे लगता है कि हम इसे संस्करण नियंत्रण में नहीं जोड़ते हैं।

0

मैं ग्रैडल के लिए नया था और सोचा था कि .gradle फ़ोल्डर में निर्भरता मैपिंग आदि जैसी सामान्य जानकारी होगी और इसे संस्करण नियंत्रण पर अपलोड किया जाएगा। मैंने फिर .gradle फ़ोल्डर सहित संस्करण नियंत्रण से कोड का उपयोग कर एक अलग ओएस स्वाद और जावा संस्करण के साथ एक नई मशीन स्थापित करने की कोशिश की और त्रुटियों में भाग गया। यह पता चला कि .gradle फ़ोल्डर में मशीन विशिष्ट जानकारी है और स्थानीय पर कैशिंग के लिए उपयोग किया जाता है। संस्करण नियंत्रण में .gradle फ़ोल्डर शामिल न करें और कोड के साथ एक नई मशीन स्थापित करने का प्रयास करें, ग्रेडल डिमन बाकी करेंगे।

संबंधित मुद्दे

 संबंधित मुद्दे