जैसा कि आप उल्लेख करते हैं, पैच गिट सबमॉड्यूल: सारांश और स्थिति के लिए गंदे सबमॉड्यूल्स को अनदेखा करते हैं।
Git 1.7.2-rc2 रिलीज़ में भी घोषित :
Git v1.7.2 Release Notes (draft)
================================
Updates since v1.7.1
--------------------
" git status
" मैंने सीखा " --ignore-submodules
" विकल्प।
अर्थ:
git config --global diff.ignoreSubmodules dirty
एक विकल्प के रूप में इसके बारे में अभी के लिए चुना दृष्टिकोण बिल्कुल नहीं है :
इस श्रृंखला के बाद मैं एक कॉन्फिग विकल्प ' ignore
' को जोड़ने की योजना बना रहा हूं .gitmodules
, जिसे प्रत्येक सबमॉडल के लिए "सभी", "डर्टी", "अनट्रैकड" या "नो" (डिफॉल्ट) में सेट किया जा सकता है।
" git diff
" और " git status
" प्रत्येक सबमॉड्यूल के लिए उस विन्यास मूल्य का उपयोग करेगा।
" --ignore-submodule
" इस डिफ़ॉल्ट को ओवरराइड करता है (और नया पैरामीटर "कोई भी नहीं" वहां जोड़ा जाएगा जो कि कॉन्फ़िगर सेटिंग्स को ओवरराइड करने में सक्षम है)।
और git submdule sync
हर बार विकल्प को बदलने से बचने के लिए , मैं .git/config
पहले इसे खोजना चाहूंगा ।
यदि यह वहां नहीं पाया जाता है .gitmodules
, तो इसे वर्तमान से लिया जाएगा ।
इसलिए उपयोगकर्ता सेटिंग को ओवरराइड कर सकते हैं, लेकिन यदि वे नहीं करते हैं, तो अपस्ट्रीम इसे आसानी से बदल सकता है (उदाहरण के लिए जब एक सबमॉड्यूल्स .gitignore
को अपडेट किया गया है ताकि " ignore=untracked
" अब जरूरी नहीं है कि इसे हटाया जा सके)।
यदि शाखाओं में ' ignore
' के .gitmodules
बीच का अंतर अलग है तो स्विचिंग शाखाओं का तुरंत प्रभाव पड़ेगा ।
एक विशेष सबमॉडल को अनदेखा करने के लिए git स्टेटस (या कोई git कमांड) बनाने का एक और तरीका Git 2.13 (Q2) के साथ उपलब्ध है:
git config submodule.<name>.active false
" गिट सबमॉडल के लिए नए कामों को अनदेखा करें " पर और देखें ।