मैं अपनी ग्रहण परियोजना से कुछ फ़ोल्डरों को कैसे निकाल सकता हूं?


86

मैं हमारे मौजूदा कोड-बेस में एक ग्रहण परियोजना जोड़ रहा हूं, और मैं जानना चाहूंगा कि क्या कुछ निर्देशिकाओं को ग्रहण द्वारा उठाए जाने का एक तरीका है? कारण यह है कि हमारे पास हमारी रिपॉजिटरी में एक विशाल "थर्ड-पार्टी" डायरेक्टरी है जो जोड़ी-प्रोग्रामिंग प्लगइन के लिए प्रोजेक्ट में मौजूद नहीं हो सकती है जिसका हम कुशलता से सिंक करने में सक्षम हैं।

कोई सुराग?


1
चूंकि यह संबंधित है, यहां देखें: webtrafficexchange.com/… एक फ़ोल्डर पर राइट क्लिक करके, गुण पर क्लिक करके और "व्युत्पन्न" बॉक्स की जांच करके, आप वास्तव में अपनी फ़ाइलों को स्रोत फ़ाइलों के रूप में रख सकते हैं लेकिन फिर उन्हें फ़ाइल खोजों से बाहर कर सकते हैं!
एंड्रयू

जवाबों:


15

फ़िल्टर संसाधनों को दृश्य से छिपाएंगे, लेकिन वे अभी भी परियोजना में हैं। यदि आप किसी अन्य स्थान पर एक प्रोजेक्ट बनाते हैं, तो आप उन फ़ोल्डरों से लिंक किए गए संसाधन बना सकते हैं जिन्हें आप अपनी परियोजना में शामिल करना चाहते हैं।

संदर्भ के लिए मैंने एक और उत्तर पोस्ट किया जो बताता है कि लिंक किए गए संसाधनों का अधिक विस्तार से उपयोग कैसे करें


रिच: यह मेरा प्रारंभिक दृष्टिकोण था, लेकिन मुझे जो समस्या मिली वह यह थी कि मैं इस परियोजना के सापेक्ष संसाधन नहीं बना सका: पूरा रास्ता हार्ड-कोडेड था। यह एक मुद्दा था क्योंकि मुझे इस परियोजना को हमारे SCM के लिए प्रतिबद्ध करने की आवश्यकता है। किसी भी विचार कैसे हल करने के लिए?
jkp

मैंने एक और उत्तर के लिए एक लिंक जोड़ा जो इस बारे में अधिक विस्तार से बताता है। आप पथों पर एक चर का उपयोग कर सकते हैं, यदि परियोजनाएँ कार्यक्षेत्र में हैं, तो आप WORKSPACE_ROOT
रिच सेलर

बहुत खुबस। मैं चर के बारे में जानता था, लेकिन मैं उन्हें पहले काम करने के लिए नहीं मिला। इसके साथ ही मेरा जाना अच्छा होना चाहिए। महान जवाब: बस मैं क्या देख रहा था।
jkp

195

इसे करने का एक सीधा तरीका है:

  1. प्रोजेक्ट एक्सप्लोरर ट्री में प्रोजेक्ट फ़ोल्डर को राइट-क्लिक करें और "गुण" पर जाएं।
  2. संसाधन -> संसाधन फ़िल्टर।
  3. अपनी पसंद के अनुसार फ़ाइलों / फ़ोल्डरों के लिए कई बहिष्करण फ़िल्टर जोड़ें।

पुनश्च यदि आपका प्रोजेक्ट ट्री स्वचालित रूप से अपडेट नहीं है, तो प्रोजेक्ट एक्सप्लोरर विंडो में इनपुट फ़ोकस करते समय आपको F5 दबाना पड़ सकता है।


8
इसका उत्तर होना चाहिए! यह लिंक किए गए फ़ोल्डरों का उपयोग करके C ++ प्रोजेक्ट्स के लिए भी काम करता है।
void.pointer

क्या आप कृपया .project फ़ाइल में क्या लिखा होगा पोस्ट कर सकते हैं? मेरा ग्रहण इस फ़ाइल में उस परिवर्तन को सहेजने में सक्षम नहीं है, इसलिए मुझे इसे मैन्युअल रूप से लिखना होगा।
दोस्त

2
इस उत्तर के लिए धन्यवाद, और फिर भी, क्या उन्हें बिल्ड से बाहर करने का कोई तरीका है, लेकिन फिर भी उन्हें प्रोजेक्ट एक्स्प्लोरर में देखने योग्य और दिखाए जाने योग्य है?
मोवसर बेकेव

6

हां, आप अपनी परियोजना पर एक कस्टम फ़िल्टर रख सकते हैं। आपके प्रोजेक्ट एक्सप्लोरर दृश्य में, पैकेज एक्सप्लोरर टैब द्वारा पैनल के शीर्ष के पास एक सफेद, नीचे की ओर इंगित करने वाला तीर होना चाहिए। इसे क्लिक करें, और फ़िल्टर पर जाएं। वहां से, आप कुछ फ़ोल्डर पैटर्न निर्दिष्ट कर सकते हैं जिन्हें आप नाम फ़िल्टर पैटर्न के बगल में स्थित बॉक्स की जांच करके नहीं चाहते हैं। इस मामले में, मैं तीसरे पक्ष के पुस्तकालय का नाम रखूंगा।


1
अल्बर्टो: पॉइंटर के लिए धन्यवाद, मुझे इस बारे में बिल्कुल नहीं पता था। केवल परेशानी यह है कि मैं एक फ़ोल्डर को पूरी तरह से बाहर करने का एक तरीका नहीं ढूंढ सकता। और जैसा कि रिच बताते हैं, वे अभी भी परियोजना में होंगे, जो हमारे लिए एक मुद्दा होगा (मुझे लगता है कि प्लगइन उन्हें सिंक करने की कोशिश करेगा)।
jkp

मुझे ऐसा लगता है कि यह एकमात्र उत्तर है जो भाषा-स्वतंत्र है। मेरे पायथन-आधारित प्रोजेक्ट में अन्य निर्देश उपलब्ध नहीं थे।
dbn

ग्रहण वास्तव में फ़ोल्डरों को छुपाता है, लेकिन वे अभी भी बिल्ड में शामिल हैं
अमीर उवाल

1

जिस तरह से मैंने हमेशा किया है वह स्पष्ट रूप से साथियों के रूप में परियोजनाओं की जांच करना है। उदाहरण के लिए:

~ / Myworkspace / goodproject
~ / Myworkspace / 3rdparty

फिर ग्रहण में केवल "गुडप्रोजेक्ट" का आयात करें। यदि "3rdparty" goodproject का उपनिर्देशिका है, तो आप इसे नकली कर सकते हैं ... उदाहरण के लिए कहो कि आपका svn प्रोजेक्ट इस तरह दिखता है:

परियोजना /
       src /
          मुख्य/
          तीसरी पार्टी/

आप स्थानीय रूप से प्रोजेक्ट / src / बना सकते हैं और फिर केवल "मुख्य" डायरेक्टरी को चेकआउट कर सकते हैं, और ग्रहण को एक पैकेज्ड वर्जन पर निर्भर कर सकते हैं (जैसे अगर आपका प्रोजेक्ट जावा है)।


1

यदि आप सीधे .project फ़ाइल में फ़िल्टर जोड़ना चाहते हैं, तो ये कुछ नियम हैं:

    <type>6</type> <!-- exclude all, files -->
    <type>5</type> <!-- include only, files -->
    <type>13</type> <!-- include only, files and folders -->
    <type>26</type><!-- exclude all, folders, all children -->

    <arguments>1.0-name-matches-false-false-xyz</arguments> <!-- case sensitive=false, regular expression=false, something named=xyz -->
    <arguments>1.0-name-matches-true-false-EEE</arguments> <!-- case sensitive = true, regular expression = false, something named=EEE -->
    <arguments>1.0-name-matches-false-false-www</arguments> <!--case sensitive=false, regular expression = false, something named=www -->

उदाहरण के लिए एक .project फ़िल्टर अनुभाग:

    <filteredResources>
        <filter>
            <id>1567020347706</id>
            <name></name>
            <type>6</type> <!-- exclude all, files -->
            <matcher>
                <id>org.eclipse.ui.ide.multiFilter</id>
                <arguments>1.0-name-matches-false-false-abc</arguments>
            </matcher>
        </filter>
        <filter>
            <id>1567020347708</id>
            <name></name>
            <type>5</type> <!-- include only, files -->
            <matcher>
                <id>org.eclipse.ui.ide.multiFilter</id>
                <arguments>1.0-name-matches-false-false-xyz</arguments> <!-- case sensitive=false, regular expression=false -->
            </matcher>
        </filter>
        <filter>
            <id>1567020347711</id>
            <name></name>
            <type>13</type>
            <matcher>
                <id>org.eclipse.ui.ide.multiFilter</id>
                <arguments>1.0-name-matches-false-false-mno</arguments>
            </matcher>
        </filter>
        <filter>
            <id>1567020347713</id>
            <name></name>
            <type>26</type><!-- exclude all, folders, all children -->
            <matcher>
                <id>org.eclipse.ui.ide.multiFilter</id>
                <arguments>1.0-name-matches-true-false-EEE</arguments> <!-- case sensitive = true, regular expression = false -->
            </matcher>
        </filter>
        <filter>
            <id>1567020347716</id>
            <name></name>
            <type>26</type> <!-- exclude all, folders, all children -->
            <matcher>
                <id>org.eclipse.ui.ide.multiFilter</id>
                <arguments>1.0-name-matches-false-false-www</arguments> <!-- case sensitive = false, regular expression = false -->
            </matcher>
        </filter>
    </filteredResources>
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.