आप
cd /e/src
git clone --bare //server/path/to/your/network/repo.git
साथ यूएसबी स्टिक के लिए लंबी यूएनसी पथ के साथ रेपो से एक नंगे करने के लिए नंगे क्लोन बना सकते हैं अखंडता की जाँच डबल कर सकते हैं लेकिन मुझे शक है कि यह आप खरीदता है एक कदम में इसे करने के लिए बहुत कुछ।
यह देखते हुए कि आप अपने स्थानीय सक्रिय रेपो में काम करेंगे, मैं यूएसबी स्टिक
cd git init --bare /e/src/myproject.git
पर एक नंगे रेपो बनाएंगे, अपने स्थानीय सक्रिय रेपो में एक दूरस्थ बनाने
git remote add usb file:///e/src/myproject.git
और फिर आवश्यकतानुसार इसे दबाएं।
git push usb philip/cool-new-feature
ऊपर दिए गए आदेश आपके यूएसबी स्टिक को मानते हैं ई: और यह कि आपकी कार्यशील निर्देशिका आपके स्थानीय सक्रिय रेपो के भीतर है।
जैसा कि मैं आपके प्रश्न को समझता हूं, आपके सहयोगी कम से कम दो अलग-अलग सेट हैं, इस पर निर्भर करते हुए कि आपके अन्य सहयोगी स्वयं के एक सामान्य केंद्रीय भंडार साझा करते हैं या सभी अलग मशीनों पर काम कर रहे हैं। इसका मतलब है कि आपके यूएसबी स्टिक पर रिपोजिटरी वह भंडार है जिसके लिए सभी (अंततः) पहुंच प्राप्त करते हैं, इसलिए आपके साथियों के साथ अपने अधिकांश समय "विमान पर" खर्च करते हैं। अपने विकास की प्रक्रिया डिजाइन करने के लिए
सुझाव:
- स्थिति है जहाँ आप या किसी और मनोनीत विलय हो जाता है से बचें। इसके बजाए, आप टीम के सभी सदस्यों को जितनी बार संभव हो सके एकीकृत करने के लिए छोटे और प्रबंधनीय विरोधाभासी परिवर्तनों की संभावना रखने के लिए चाहते हैं।
- सहयोगियों को अलग करने से जोखिम बढ़ जाता है कि कोई ऐसी सुविधा को तोड़ देगा जो किसी और पर निर्भर करता है, या तो असुरक्षित परिवर्तनों के माध्यम से या गलत तरीके से विलय विवादों को हल करता है। आपके पास यह निर्धारित करने के लिए एक त्वरित, एक-बटन विधि होनी चाहिए कि आपके कोड में कोई भी प्रतिक्रिया या नई बग फंस गई है या नहीं।
- सहयोगियों के प्रत्येक समूह, यानी, जिनके पास एक दूसरे के भंडार या आपके यूएसबी स्टिक की तुलना में साझा भंडार की अधिक लगातार पहुंच है, उन्हें अपने आप में निरंतर एकीकरण करना चाहिए। जब यूएसबी स्टिक से नया काम उपलब्ध होता है, तो शेष टीम से नए कोड के साथ उनके पास जो कुछ है, उसे एकीकृत करना शीर्ष प्राथमिकता बनना चाहिए।
एक तरीका यह है कि आप ऐसा कर सकते हैं कि हर कोई एक स्वच्छ मास्टर रखे और अन्य शाखाओं में परिवर्तन करे। यूएसबी स्टिक के भौतिक कब्जे एक प्राकृतिक एकीकरण टोकन है, इसलिए जब किसी दिए गए सहयोगी यह है, अनुक्रम
git checkout master
git pull usb master # should always be a fast-forward
git merge feature1
make test # or whatever, and repeat until no breakage
git commit
git push usb master
git push shared master # if appropriate
git merge feature2 # if necessary
...
स्रोत
2011-06-18 22:20:00
आपके पास एक (लॉजिकल) डिस्क से दूसरे में हार्डलिंक नहीं हो सकते हैं। – svick