2010-01-12 12 views
9

का उपयोग करता है मैं एक त्वरित पुन: स्थापित करने से पहले, एक डीवीडी पर अपनी सामग्री जल रहा हूं। हाल ही में एक उपयोगकर्ता होने के नाते, गिट के साथ ऐसा कभी नहीं किया। तो मैं बस तुम्हारे साथ लोगों की जांच कर रहा हूँ। अगर मैं सही ढंग से समझ गया, तो मुझे बस अपनी प्रोजेक्ट निर्देशिका प्रोजेक्ट_नाम (जिसमें है। इसके अंदर) बैकअप करने की आवश्यकता है) इसके साथ छिपी हुई फाइलों के लिए देख रहे हैं, और जब मैं इसे "नई" मशीन पर कॉपी करता हूं, और फिर गिट इंस्टॉल करता हूं, तो मैं फिर से शुरू हुआ कुछ भी नहीं हुआ? सही बात ?बैक अप अप प्रोजेक्ट जो गिट

+0

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

उत्तर

8

हाँ। ये सही है।

+4

सबसे छोटा, और सबसे अधिक चिंता कभी जवाब देने :) :) – Rook

+4

मैंने बस "हाँ" कहने की कोशिश की। लेकिन यह मुझे 15 वर्णों से छोटे उत्तरों को पोस्ट नहीं करने देगा: पी ए गिट रिपोजिटरी केवल एक फ़ोल्डर (और यह उप फ़ोल्डर्स) है जिसमें गिट इनिट के साथ शुरू की गई .git निर्देशिका है। आप कहीं भी इस फ़ोल्डर को स्थानांतरित कर सकते हैं और यह गिट के साथ काम करेगा। –

+0

मैं भी गिट के लिए नया हूं, इसलिए इस सवाल पर आ रहा हूं। भले ही 'गिट बंडल' अन्य उत्तरों के मुताबिक बेहतर विकल्प की तरह लगता है, अगर मैन्युअल रूप से फ़ाइलों का बैक अप लेना है, निश्चित रूप से केवल _.git_ फ़ोल्डर का बैक अप लेने की आवश्यकता है? क्या किसी भी शाखा की वर्तमान स्थिति को उस फ़ोल्डर की सामग्री से ठीक से पुनर्निर्मित किया जा सकता है? –

11

आप केवल बैकअप परियोजना फ़ाइलें (इतिहास) के बिना, आप git archive उपयोग कर सकते हैं करना चाहते हैं (इस तरह से, मैं "छिपा फ़ाइल के लिए घड़ी" की जरूरत नहीं है)

स्क्रिप्ट git-archive-all.sh वास्तव में सभी Git संग्रह को संगृहीत करेगा और वर्तमान पथ में submodules।

अन्य गिटार सुपर-प्रोजेक्ट का एक टैरिफाइल बनाने के लिए उपयोगी है जिसमें अन्य सबोड्यूल शामिल हैं।


Charles Bailey ठीक ही टिप्पणी में उल्लेख के रूप में, git bundle इतिहास को संरक्षित करने, अधिक उपयुक्त है। (git bundleFebruary 2007 में पेश किया गया था)।

देखें Backing up a git repository with git bundle

git bundle Git के हस्तांतरण की अनुमति के लिए डिजाइन किया गया था करता है जब वहाँ खजाने के बीच कोई सीधा संबंध नहीं है (यानी: ऑफ़लाइन) लेकिन पैच का उपयोग कर करता है और कई की बड़ी संख्या की वजह से एक विकल्प नहीं है शाखाओं।
git bundle केवल एक फ़ाइल है जिसे बहुत आसानी से बनाया जा सकता है और फिर आयात किया जा सकता है क्योंकि इसे किसी अन्य रिमोट की तरह माना जा सकता है। एक त्वरित उदाहरण:

[email protected]:~/devel$ git bundle create ~/devel.bdl master test 

और एक बंडल ~/devel.bdl मेरे मालिक और परीक्षण शाखाओं युक्त अंतर्गत सहेजा जाता है।
यदि मैं अब भंडार बी पर हूं तो मैं केवल [email protected]:~$ git ls-remote devel.bdl का उपयोग करता हूं जो मुझे बंडल में संग्रहीत शाखाओं को दिखाता है।
एक रिमोट की तरह बंडल मैं इसे सरल इलाज का उपयोग करने के लिए, Git (उदाहरण के लिए) लाने का उपयोग कर

[email protected]:~/git/repoB$ git fetch ~/devel.bdl refs/heads/\*:refs/remotes/bundle/\* 
+1

'गिट-आर्काइव-ऑल' मीटरी से है (http: // github।कॉम/मीटर) – VonC

+1

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

+1

@ चार्ल्स: टिप्पणी के लिए धन्यवाद। मैंने तदनुसार अपना जवाब संपादित किया है। – VonC

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