दिलचस्प पोस्ट
सर्वर पर 'कैनवास' छवि डेटा अपलोड करना JTable में एक सेल का पृष्ठभूमि रंग बदलें प्रत्येक विंडो के माध्यम से आप एक टेक्स्ट फ़ाइल में लूप कैसे करते हैं, जो कि एक विंडोज़ बैच फ़ाइल का उपयोग करते हैं? कॉरस, कॉर्डोबा, एंजियर जे एस $ http और फाइल: // भ्रम स्थानीय मॉड्यूल को एनपीएम पैकेज निर्भरता के रूप में निर्दिष्ट कैसे करें एसएसएच पर सब्लाइम का उपयोग कैसे करें हाल ही में शुरू किए गए कार्यक्रम को फिर से चलाने के लिए क्या ईक्लेप्से में कोई शॉर्टकट है? निष्पादक सेवा, समाप्त करने के लिए सभी कार्यों का इंतजार कैसे करें युग के बाद से सेकंड के साथ एक डेटैट ऑब्जेक्ट प्रारंभ करें NLTK में वर्गीकरण के लिए movie_reviews कॉर्पस के बजाय मेरी स्वयं का कॉर्पस का उपयोग करना कैसे जावास्क्रिप्ट में फ़ायरफ़ॉक्स से HTML को पार्स करने के लिए? मैं अंतर्निहित दृश्य स्टूडियो डिबगर सर्वर में वेब। डीबग। कॉन्फिग का उपयोग कैसे कर सकता / सकती हूं? सी # में अज्ञात लंबाई की एक धारा से एक हैश की गणना करें जुड़ने के क्षेत्र में अल्पविराम से अलग-अलग सूची का उपयोग करके दो तालिकाओं में कैसे जुड़ें कुंजी, प्राथमिक कुंजी, अद्वितीय कुंजी और MySQL में अनुक्रमणिका के बीच का अंतर

मैं गिट में निर्देशिका में फ़ाइलों को कैसे अनदेखा कर सकता हूं?

निर्देशिका में फ़ाइलों को अनदेखा करने के लिए .gitignore फ़ाइल के लिए उचित सिंटैक्स क्या है?

क्या यह होगा

 config/databases.yml cache/* log/* data/sql/* lib/filter/base/* lib/form/base/* lib/model/map/* lib/model/om/* 

या

 /config/databases.yml /cache/* /log/* /data/sql/* /lib/filter/base/* /lib/form/base/* /lib/model/map/* /lib/model/om/* 

?

Solutions Collecting From Web of "मैं गिट में निर्देशिका में फ़ाइलों को कैसे अनदेखा कर सकता हूं?"

पटरन फॉर्मैट

  • एक रिक्त पंक्ति कोई फ़ाइल नहीं मेल करता है, इसलिए यह पठनीयता के लिए एक विभाजक के रूप में सेवा कर सकता है।

  • # प्रारंभ होने वाली एक पंक्ति टिप्पणी के रूप में कार्य करती है

  • एक वैकल्पिक उपसर्ग ! जो पैटर्न को नकार देता है; पिछली प्रतिरूप से बाहर की गई कोई भी मेल फाइल फिर से शामिल हो जाएगी यदि एक नकारित पैटर्न मेल खाता है, तो यह निम्न पूर्ववर्ती पैटर्न स्रोतों को ओवरराइड करेगा

  • यदि पैटर्न स्लैश के साथ समाप्त होता है, तो इसे निम्नलिखित विवरण के उद्देश्य से निकाल दिया जाता है, लेकिन यह केवल एक निर्देशिका के साथ एक मैच खोजता है दूसरे शब्दों में, foo/ एक निर्देशिका foo और इसके नीचे के पथ से मेल खाएगा, लेकिन यह एक नियमित फाइल या एक प्रतीकात्मक लिंक foo से मेल नहीं खायेगा (यह जिस तरह से सामान्यतः जीआईटी में काम करता है)।

  • यदि पैटर्न में कोई स्लैश नहीं है, तो git इसे एक गोलाकार पैटर्न के रूप में मानता है और .gitignore फ़ाइल के स्थान के सापेक्ष पथ नाम के खिलाफ एक मैच के लिए जांच करता है (कार्य पेड़ के शीर्षवल के सापेक्ष अगर नहीं .gitignore फ़ाइल)।

  • अन्यथा, जीआईटी पैटर्न को एक गोला ग्लोब के रूप में fnmatch(3) जिसे fnmatch(3) द्वारा fnmatch(3) द्वारा खपत के लिए उपयुक्त FNM_PATHNAME गया है: पैटर्न में वाइल्डकार्ड पथ के नाम से मेल नहीं खाएंगे। उदाहरण के लिए, Documentation/*.html मेल Documentation/git.html लेकिन Documentation/ppc/ppc.html नहीं Documentation/ppc/ppc.html Documentation/*.html या tools/perf/Documentation/perf.html

  • एक अग्रणी स्लैश पथनाम की शुरुआत से मेल खाता है उदाहरण के लिए, / /*.c cat-file.c /*.c पर नहीं बल्कि mozilla-sha1/sha1.c

आप यहां अधिक जानकारी प्राप्त कर सकते हैं

git help gitignore
या
man gitignore

यह पूर्व होगा फ़ोल्डर संरचना के बजाय एक्सटेंशन के रूप में भी जाएं

Ie मेरा उदाहरण सी # विकास की उपेक्षा फ़ाइल:

 #OS junk files [Tt]humbs.db *.DS_Store #Visual Studio files *.[Oo]bj *.user *.aps *.pch *.vspscc *.vssscc *_i.c *_p.c *.ncb *.suo *.tlb *.tlh *.bak *.[Cc]ache *.ilk *.log *.lib *.sbr *.sdf ipch/ obj/ [Bb]in [Dd]ebug*/ [Rr]elease*/ Ankh.NoLoad #Tooling _ReSharper*/ *.resharper [Tt]est[Rr]esult* #Project files [Bb]uild/ #Subversion files .svn # Office Temp Files ~$* 

अद्यतन करें

मैंने सोचा कि मैं नीचे की टिप्पणियों से एक अद्यतन प्रदान करेगा यद्यपि ओपी के सवाल का सीधे जवाब नहीं दे रहा है, लेकिन नीचे दिए गए .gitignore वाक्यविन्यास के अधिक उदाहरणों के लिए देखें।

सामुदायिक विकी (लगातार अद्यतन किया जा रहा है):

दृश्य स्टूडियो परियोजनाओं और समाधानों के लिए

विशिष्ट भाषा के इस्तेमाल के साथ और उदाहरण यहां मिल सकते हैं (क्रिस मैककाईट की टिप्पणी के लिए धन्यवाद):

https://github.com/github/gitignore

स्लैश वाले पथ को .gitignore फ़ाइल वाले निर्देशिका के सापेक्ष लिया जाता है – आमतौर पर आपके रिपॉजिटरी का शीर्ष स्तर, हालांकि आप उन्हें उप-डायरेक्टरीज़ में रख सकते हैं।

इसलिए, जब आप सभी उदाहरणों में देते हैं, तो पथ में स्लेश होते हैं, दो संस्करण समान होते हैं। केवल एक बार जब आपको एक अग्रणी स्लैश लगाने की जरूरत होती है, तब जब कोई पहले से पथ में नहीं था । उदाहरण के लिए, केवल फू को रिपॉजिटरी के शीर्ष स्तर पर अनदेखा करने के लिए, /foo उपयोग करें बस लिखने foo रिपॉजिटरी में कहीं भी फू नामक कुछ भी उपेक्षा करेगा

आपके वाइल्डकार्ड भी बेमानी हैं यदि आप एक संपूर्ण निर्देशिका को अनदेखा करना चाहते हैं, तो बस इसे नाम दें:

 lib/model/om 

आपके पास वैसे वाइल्डकार्ड का उपयोग करने का एकमात्र कारण है यदि आप बाद में कुछ निर्देशिका को अनदेखा न करें:

 lib/model/om/* # ignore everything in the directory !lib/model/om/foo # except foo 

एक अग्रणी स्लैश इंगित करता है कि अनदेखा प्रविष्टि केवल उस निर्देशिका के संबंध में वैध होने के लिए है, जिसमें .gitignore फ़ाइल मौजूद है। निर्दिष्ट करना *.o इस निर्देशिका में सभी .o फाइलों को अनदेखा कर देगा और सभी /*.o , जबकि /*.o उस डीआईआर में केवल उन्हें अनदेखा कर देगा, जबकि फिर, /foo/*.o केवल उन्हें /foo/*.o पर नजरअंदाज करेगा ।

यदि आप शीर्ष स्तर पर .gitignore फ़ाइल डालनी चाहते हैं और इसे नीचे किसी भी फ़ोल्डर के लिए काम करते हैं तो इसका उपयोग करें /**/

उदाहरण के लिए एक /src/main/ फ़ोल्डर और सब-फ़ोल्डरों में *.map फ़ाइलों को अनदेखा करने का उपयोग करें:

 /src/main/**/*.map 

प्रश्न में दोनों उदाहरण वास्तव में बहुत खराब उदाहरण हैं जो डेटा हानि को जन्म दे सकते हैं!

मेरी सलाह: ग्रिगेंगोर फाइलों में निर्देशिकाओं को कभी भी जोड़ें /* न दें, जब तक आपके पास कोई अच्छा कारण न हो!

उदाहरण के लिए एक अच्छा कारण होगा कि जेफ्रोमी क्या लिखा था: "यदि आप बाद में कुछ निर्देशिका में कुछ न नजरअंदाज करना चाहते हैं"

अन्यथा ऐसा क्यों नहीं किया जाना चाहिए यह है कि एक निर्देशिका में /* निर्देशिकाओं को जोड़ने के तरीके से उस तरीके से कार्य करता है कि वह निर्देशिका की सभी सामग्रियों को अच्छी तरह से अनदेखा करता है, पर दूसरी ओर इसका एक ख़तरनाक दुष्प्रभाव होता है:

यदि आप git stash -u (अस्थायी रूप से ट्रैक किए गए और git clean -df फाइलों को छिपाने के लिए) या git clean -df ( git clean -df को हटाना है, लेकिन ध्यान न दें फाइलों को अपने रिपॉजिटरी में रखते हैं) को git clean -df करते हैं, तो सभी निर्देशिका जो git clean -df /* साथ अनदेखी की जाती है, उन्हें अपरिवर्तनीय रूप से हटा दिया जाएगा !

कुछ पृष्ठभूमि

मुझे यह कठिन रास्ता सीखना था मेरी टीम में कोई भी हमारी निर्देशिका में कुछ निर्देशिकाओं में संलग्न हो रहा था। समय के साथ मेरे पास ऐसे अवसर थे जहां कुछ निर्देशिका अचानक गायब हो जाएंगी। हमारे आवेदन द्वारा आवश्यक स्थानीय डेटा के गीगाबाइट के साथ निर्देशिकाएँ कोई भी इसे समझा नहीं सकता और मैं हमेशा सभी डेटा पुनः डाउनलोड करने के लिए हैट करता हूं। थोड़ी देर के बाद मुझे यह धारणा है कि उसे git stash साथ करना पड़ सकता है एक दिन मैं अपने स्थानीय रेपो को साफ करना चाहता था (जबकि फाइलों को ध्यान में रखते हुए) और मैं git clean -df का इस्तेमाल कर रहा था और फिर मेरा डाटा समाप्त हो गया था। इस बार मैं पर्याप्त था और इस मुद्दे की जांच की। आखिरकार मैंने सोचा कि कारण ऐपडेड /*

मुझे लगता है कि यह किसी भी तरह से समझाया जा सकता है कि directory/* सभी सामग्री को अनदेखा कर देती है, लेकिन निर्देशिका को स्वयं नहीं। इस प्रकार यह न तो ट्रैक किया जाता है और न ही अनदेखा किया जाता है जब चीजें हटा दी जाती हैं हालांकि git status और git status --ignored कि उस पर थोड़ा अलग तस्वीर दें

पुन: उत्पन्न कैसे करें

यहां व्यवहार को पुन: उत्पन्न करने का तरीका बताया गया है। मैं वर्तमान में गीट 2.8.4 का उपयोग कर रहा हूं।

localdata/ नामक एक डायरेक्टरी localdata/ जिसमें एक डमी फाइल है ( important.dat localdata/ साथ स्थानीय जीआईटी भंडार में बनाई जाएगी और सामग्री को /localdata/* को /localdata/* फ़ाइल में डालकर अनदेखा किया जाएगा। जब दो उल्लेख किए गए git आदेशों में से एक अब निष्पादित होता है, तो निर्देशिका (अप्रत्याशित रूप से) खोई जाएगी

 mkdir test cd test git init echo "/localdata/*" >.gitignore git add .gitignore git commit -m "Add .gitignore." mkdir localdata echo "Important data" >localdata/important.dat touch untracked-file 

यदि आप एक git status --ignored करते हैं – यहां git status --ignored हैं, तो आपको मिलेगा:

 On branch master Untracked files: (use "git add <file>..." to include in what will be committed) untracked-file Ignored files: (use "git add -f <file>..." to include in what will be committed) localdata/ 

अब या तो करें

 git stash -u git stash pop 

या

 git clean -df 

दोनों ही मामलों में कथित तौर पर अनदेखी हुई निर्देशिका localdata हो जाएगी!

निश्चित नहीं है कि यह एक बग माना जा सकता है, लेकिन मुझे लगता है कि यह कम से कम एक ऐसी सुविधा है जिसकी जरूरत नहीं है

मैं जीआईटी विकास सूची को रिपोर्ट करूँगा और देखेंगे कि वे इसके बारे में क्या सोचते हैं।

पहले वाला। उन फाइल पथ रिश्तेदार हैं जहां आपके .gitignore फ़ाइल है

यह होगा:

 config/databases.yml cache log data/sql lib/filter/base lib/form/base lib/model/map lib/model/om 

या संभवतः भी:

 config/databases.yml cache log data/sql lib/*/base lib/model/map lib/model/om 

यदि filter और form केवल लिब में एकमात्र निर्देशिका होते हैं जिनके पास उप-निदेशिका है जिस पर ध्यान नहीं दिया जाता है (जिसे आप एस्टरिक्स के साथ क्या कर सकते हैं इसका एक उदाहरण के रूप में देखें)।

मैं जीयूआई और सीएलआई आधारित सेवा को कायम रख रहा हूं जो आपको https://www.gitignore.io पर बहुत आसानी से उत्पन्न करने के लिए अनुमति देता है।

आप या तो खोज फ़ील्ड में इच्छित टेम्पलेट्स टाइप कर सकते हैं या कमांड लाइन उपनाम स्थापित कर सकते हैं और चला सकते हैं

$ gi swift,osx

एक नमूना .gitignore फ़ाइल एक एंड्रॉइड स्टूडियो प्रोजेक्ट के लिए नीचे की तरह दिख सकती है

 # built application files *.apk *.ap_ # files for the dex VM *.dex # Java class files *.class # generated files bin/ gen/ # Local configuration file (sdk path, etc) local.properties #Eclipse *.pydevproject .project .metadata bin/** tmp/** tmp/**/* *.tmp *.bak *.swp *~.nib local.properties .classpath .settings/ .loadpath YourProjetcName/.gradle/ YourProjetcName/app/build/ */YourProjetcName/.gradle/ */YourProjetcName/app/build/ # External tool builders .externalToolBuilders/ # Locally stored "Eclipse launch configurations" *.launch # CDT-specific .cproject # PDT-specific .buildpath # Proguard folder generated by Eclipse proguard/ # Intellij project files *.iml *.ipr *.iws .idea/ /build build/ */build/ */*/build/ */*/*/build/ *.bin *.lock YourProjetcName/app/build/ .gradle /local.properties /.idea/workspace.xml /.idea/libraries .DS_Store .gradle/ app/build/ *app/build/ # Local configuration file (sdk path, etc) local.properties /YourProjetcName/build/intermediates/lint-cache/api-versions-6-23.1.bin appcompat_v7_23_1_1.xml projectFilesBackup build.gradle YourProjetcName.iml YourProjetcName.iml gradlew gradlew.bat local.properties settings.gradle .gradle .idea android build gradle