2011-03-03 9 views
9

मुझे कुछ फाइलें/फ़ोल्डर्स मिल गए हैं जो गिट स्टेजिंग क्षेत्र को छोड़ नहीं पाएंगे?गिट में दिखाई देने वाली संशोधित फ़ाइलों के साथ समस्या लेकिन अद्यतन नहीं हो रहा है?

# On branch master 
# Changed but not updated: 
# (use "git add <file>..." to update what will be committed) 
# (use "git checkout -- <file>..." to discard changes in working directory) 
# (commit or discard the untracked or modified content in submodules) 
# 
# modified: JavaScript/Stand.ard.iz.er (modified content, untracked content) 
# modified: Site (untracked content) 
# modified: Template Archives/Template (modified content, untracked content) 
# modified: Template Archives/Template_Git (modified content, untracked content) 
# 

मैंने इन 'संशोधित' फ़ाइलों को कम करने के लिए सब कुछ करने की कोशिश की है लेकिन बिना किसी किस्मत के?

मैं कोशिश की है ...

git add . 
git add * 
git add -u 
git add {actual full directory path} 

... लेकिन यह से कोई भी काम करता है।

कोई विचार?

धन्यवाद।

उत्तर

13

वे submodules हो सकते हैं, इस स्थिति में उनकी स्थिति पेरेंट रेपो की स्थिति से प्रदर्शित की जाएगी।

जब परिवर्तन की तलाश में submodules में परिवर्तन पर ध्यान न दें:

, जब तक वह यह है कि, आप git status की --ignore-submodules[=<when>] विकल्प का उपयोग करें।
<when> या तो "none", "untracked", "dirty" या "all" हो सकता है, जो डिफ़ॉल्ट है।

  • का उपयोग करना "none" submodule संशोधित विचार करेंगे जब यह या तो ट्रैक न किए गए या संशोधित फ़ाइलें हैं या उसके HEAD अलग superproject में दर्ज लें और git-config में उपेक्षा विकल्प के किसी भी सेटिंग को ओवरराइड करने के लिए इस्तेमाल किया जा सकता से या gitmodules
  • जब "untracked" प्रयुक्त होता है तो पनडुब्बियों को गंदे नहीं माना जाता है जब उनमें केवल अनचाहे सामग्री होती है (लेकिन वे अभी भी संशोधित सामग्री के लिए स्कैन किए जाते हैं)।
  • "dirty" का उपयोग करके "सबमिड्यूल के कार्य पेड़ में सभी परिवर्तनों को अनदेखा करता है, केवल सुपरप्रोजेक्ट में संग्रहीत कामों में परिवर्तन दिखाए जाते हैं (यह 1.7.0 से पहले व्यवहार था)।
  • का उपयोग करना "all" submodules के सभी परिवर्तनों को छुपाता है (और जब config option status.submodulesummary सेट कर दिया जाता submodule के सारांश के उत्पादन को दबा)।

किसी भी मामले में, आप जोड़ना और submodules खुद को भीतर से प्रतिबद्ध, एक स्तर (मूल रेपो स्तर पर) ऊपर जाने के लिए सक्षम होने से पहले की जरूरत है, और साफ स्थिति देखना होगा।

+0

तो यदि वे संशोधित के रूप में दिखते रहते हैं, तो मैं अपने रेपो से अपनी "संशोधित सामग्री" को कैसे साफ कर सकता हूं? – Trip

+1

@ टिप: उस सबमिशन में जाकर, 'गिट एड' करें * * * * करें, फिर प्रतिबद्ध करें, फिर पैरेंट रेपो पर वापस जाएं: एक 'गिट स्टेटस' एक साफ स्थिति दिखाएगा। – VonC

+1

@ वॉनसी मैंने आपके निर्देशों का पालन किया और अब माता-पिता पर एक गिट स्थिति 'बंडल/सुपरटेब (नई प्रतिबद्धता) दिखाती है। अगर मैं अभी वापस जाता हूं, तो मैंने पाया कि 'गिट स्टेटस' संशोधित सामग्री नहीं दिखाता है, लेकिन अगर मैं प्रतिबद्ध करने की कोशिश करता हूं तो भी मुझे 'संशोधित: बंडल/सुपरटैब (संशोधित सामग्री)' दिखाई देता है। क्या आप जानते हैं कि मैं इससे छुटकारा पा सकता हूं? –

11

यदि आप अपने प्रोजेक्ट में कुछ नया फ़ोल्डर कॉपी कर चुके हैं, तो यह खुशी हो सकती है, जिसमें पहले से ही एक .git फ़ोल्डर है। तो यह आपके मुख्य भंडार में एक उप भंडार की तरह होगा। समाधान सिर्फ आपके नए कॉपी किए गए उप फ़ोल्डर में इस फ़ोल्डर को हटा दें।

+0

इसके अलावा .git फ़ोल्डर को हटाने के बाद इस फ़ोल्डर में किए गए किसी भी बदलाव को पैरेंट रेपो द्वारा ट्रैक नहीं किया जाएगा। कम से कम यह है कि यह गिट v1.8.3.1 में है, मैं उपयोग कर रहा हूँ। –

+1

आपको इस सबमिशन के बारे में भूलने के लिए 'git rm --cached submodule_path # सबमिशन HEAD (कोई पिछला स्लैश) संदर्भ संदर्भित करने की आवश्यकता नहीं है। –

+0

@ZoltanFedor इसके लिए धन्यवाद। – Mina

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