दिलचस्प पोस्ट
एंड्रॉइड स्क्रीनशॉट की सतह के दृश्य को ब्लैक स्क्रीन दिखाता है क्यों Matplotlib के साथ इतनी धीमी योजना बना रहा है? स्वत: पूर्ण करने के लिए एल्गोरिथ्म? iPhone ऐप में स्थानीय नोटिफिकेशन कैसे बनाएं getElementsByClassName काम नहीं कर रहा है Haskell का उपयोग करके सूची में समान आइटम कैसे समूहित करें? मुझे Google वित्त जैसे एपीआई के माध्यम से मुद्रा विनिमय दर कैसे प्राप्त हो सकती हैं? मैटलॉग से जावा कॉलिंग? Access_control नियम रीडायरेक्ट के बाद उपयोगकर्ता को सूचित करने का सबसे अच्छा तरीका क्या है? ऐरे # मैप के लिए कॉलबैक के रूप में स्ट्रिंग # ट्रिम का उपयोग नहीं किया जा सकता संकलन समय पर जांचें अगर खाका तर्क शून्य है स्ट्रिंग्स की सूची के लिए मैं एक अच्छे हैश कोड की गणना कैसे करूं? जेपीएनएल के कार्य के बारे में चिंताएं: पेंटवॉम्पोनेंट () रीसायकल इमेजिव्यू का बिटमैप मुख्य की उचित घोषणा क्या है?

क्या यह सुरक्षित – 1 के साथ उथले क्लोन करने के लिए सुरक्षित है, कमिट बनाएं, और फिर से अपडेट खींचें?

git clone में --depth 1 विकल्प:

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

लेकिन मैंने सफलतापूर्वक एक उथले क्लोन किया है, कुछ परिवर्तन किए हैं और उन परिवर्तनों को वापस (बेर क्लोन) मूल में भेज दिया है।

यह मुझे समझ में आता है – मेरा मतलब है क्यों नहीं? जब क्लोन हेड को मूल रूप में पहचाना जा सकता है, और मेरी प्रतिबद्धता इस पर सबसे ऊपर आती है, कोई कारण नहीं लगता है। लेकिन मैनुअल अन्यथा कहता है

मुझे उथले क्लोन का विचार पसंद है – जैसे कि डॉप्ल कोर का उदाहरण: जब मैं 7 से शुरू हुआ था, तो मुझे कोई भी रास्ता नहीं पता था कि मैं क्या चाहता था। लेकिन मैं खुद को पैर में शूट नहीं करना चाहता था।

तो क्या यह उथले क्लोन के लिए सुरक्षित है, इसमें कमियां विकसित की जा सकती हैं, मूल से अपडेट के साथ रखने के लिए फिर से खींचें?

Solutions Collecting From Web of "क्या यह सुरक्षित – 1 के साथ उथले क्लोन करने के लिए सुरक्षित है, कमिट बनाएं, और फिर से अपडेट खींचें?"

ध्यान दें कि Git 1.9 / 2.0 (Q1 2014) ने उस सीमा को हटा दिया है।
देखें 82fba2b , Nguyễn Thái Ngọc Duy से ( pclouds ) :

अब जब कि git डेटा स्थानांतरण से या उथले क्लोन का समर्थन करता है, तो ये सीमाएं अब सच नहीं हैं।

दस्तावेज़ अब पढ़ता है :

 --depth <depth>:: 

संशोधनों की निर्दिष्ट संख्या में छंटित इतिहास के साथ एक 'उथले' क्लोन बनाएं।

जो कि 0d7d285 , f2c681c , और c29a7b8 की तरह होता है जो क्लोन का समर्थन करता है, प्रेषक -पैक / प्राप्त-पैक के साथ उथले क्लोनों से।
स्मार्ट-होम अब उथले फैच / क्लोन का भी समर्थन करता है

सभी विवरण " shallow.c : shallow.c .git/shallow लिए नए shallow.c का चयन करने के लिए 8 चरणों "।

जून 2015 अपडेट करें: Git 2.5 भी एक एकल प्रतिबद्धता लाने की अनुमति देगा!
(अंतिम उथले मामले)


जनवरी 2016 को अपडेट करें: गिट 2.8 (मच 2016) अब आधिकारिक तौर पर न्यूनतम इतिहास बनाने का अभ्यास कर रहे हैं।
स्टीफन पी। स्मिथ (“) द्वारा 99 9 7 9 सीएफ देखें, 9 सीएफडी 9 ई (30 दिसंबर 2015) कम करें, 9 सीएफडी 9 ए (30 दिसंबर 2015) कम करें, बीएसी 5874 (2 9 डिसें 2015) कम करें, और 1de2e44 (28 दिसंबर 2015 ) कम करें ।
( जूनो सी gitster द्वारा मर्ज किए गए – gitster – कमेटेड 7e3e80a , 20 जनवरी 2016)

यह " Documentation/user-manual.txt " है

एक <<def_shallow_clone,shallow clone>> git-clone --depth स्विच निर्दिष्ट करके बनाया गया है
git-fetch --depth बाद में git-fetch --depth स्विच, या पूर्ण इतिहास के साथ --unshallow साथ बदल दिया जा सकता है।

एक <<def_shallow_clone,shallow clone>> तब तक काम करेगा जब तक मर्ज बेस हाल के इतिहास में हो।
अन्यथा, यह असंबंधित इतिहास के विलय की तरह होगा और इसके कारण बड़े संघर्ष हो सकते हैं।
यह सीमा मर्ज आधारित वर्कफ़्लो में उपयोग किए जाने वाले ऐसे एक रिपॉजिटरी के लिए अनुपयुक्त हो सकती है।


उथले क्लोन अद्यतन प्रक्रिया के बारे में अधिक जानकारी के लिए, " कैसे एक git उथले क्लोन को अपडेट करें? " देखें।


रिचर्ड माइकल द्वारा टिप्पणी के रूप में:

इतिहास को वापस करने के लिए: git pull --unshallow

और ओल्ले हार्स्टेड टिप्पणी में कहते हैं:

इतिहास का बैकफ़िल हिस्सा : git fetch --depth=100

मेरे कुछ इसी तरह के प्रश्नों को देखें- क्यों-कठबोली-से-एक-उथले-क्लोन और गिट सूची पर हाल के धागे के लिंक।

अंततः, 'गहराई' माप रेपो के बीच सुसंगत नहीं है, क्योंकि वे (ए) आपके हेड, या (बी) आपके द्वारा किए गए कमेट्स / क्लोन या (सी) कुछ और आपके मन में

मुश्किल बिट का उपयोग केस केस (यानी आत्मसंगत) हो रहा है, इसलिए वितरित किया जाता है, और इसलिए संभवतः भिन्न रिपो अभी भी एक साथ खुशी से काम करेंगे।

यह checkout --orphan तरह checkout --orphan है – checkout --orphan सही 'सेट-अप' चरण है, लेकिन अभी भी "क्लोन" चरण पर साफ (अर्थात एक सरल समझदार एक पंक्ति कमांड) मार्गदर्शन नहीं है इसके बजाए ऐसा लगता है कि आपको एक रेपो ट्रैकिंग शाखा स्थापित करनी है (आप केवल एक शाखा चाहते हैं?), और तब एक ही शाखा को प्राप्त करें, जो गलतियों के लिए अधिक अवसरों के साथ लंबे समय तक चलने लगता है

संपादित करें: 'क्लोन' चरण के लिए यह जवाब देखें