2010-03-04 9 views
6

मेरे पास एक भंडार है, मैं दो "विचार" रखना चाहता हूं: डेवलपर पूरी बात देख सकते हैं और ग्राहकों को केवल कुछ निश्चित (टैग किया गया है, या किसी अन्य तरीके से चिह्नित) शाखाएं देखना चाहिए।गिट संस्करण नियंत्रण - रेपॉजिटरीज़ पर विचार?

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

इस प्रकार मैंने सोचा कि यह अच्छा होगा अगर मैं "विचार" कर सकता हूं (केवल टैग एक्स दिखाएं ..) भंडार पर, या कुछ ऐसा जो मेरी समस्या हल करता है, लेकिन afaik यह गिट में possbile नहीं है।

दया

उत्तर

2

फिर भी मेरी बड़ी समस्या बनी हुई है:
अगर मैं बी के भंडार एक क्लोन और मैं भंडार बी पर काम की तुलना में मैं भंडार एक की सभी शाखाओं (वे remots/origin/[branchName] के रूप में चिह्नित कर रहे हैं) को देखने के - तो एक ग्राहक को शुरू होता है, तो GitWeb रिपोजिटरी बी वह सभी शाखाओं को देखेंगे। और यही वह है जो मैं नहीं चाहता।

आप gitosis साथ भंडार प्रति पहुँच प्रबंधन कर सकते हैं, और gitolite साथ टैग या शाखा प्रति भी पहुँच।

7

गिट में शाखाएं स्थानीय हैं।

आपके पास स्थानीय रूप से शाखाएं हो सकती हैं और प्रासंगिक भंडारों को केवल प्रासंगिक लोगों को धक्का दे सकती हैं।

alt text http://nvie.com/wp-content/uploads/2009/12/Screen-shot-2009-12-24-at-11.32.03.png

छवि के ऊपर http://nvie.com/git-model से एक अच्छा कार्यप्रवाह है, जिसमें डेवलपर्स कई शाखाएं हैं लेकिन धक्का केवल शाखा को विकसित करने और इसी तरह उत्पादन सर्वर केवल मास्टर शाखा है।

+0

महान लिंक, धन्यवाद – tanascius

+0

आपकी पुश सलाह ने मुझे बहुत मदद की !, यही वही है जो मुझे चाहिए। - फिर भी मेरी बड़ी समस्या बनी हुई है: यदि मैं रिपॉजिटरी ए से बी क्लोन करता हूं और मैं रिपोजिटरी बी पर काम करता हूं, तो मैं रिपोजिटरी ए की सभी शाखाओं को देखता हूं (उन्हें रिमोट/मूल/[शाखा नाम] के रूप में चिह्नित किया जाता है) - इसलिए यदि कोई ग्राहक गिटवेब शुरू करता है रिपोरिटरी बी पर वह सभी शाखाओं को देखेगा। और यही वह है जो मैं नहीं चाहता। – dayscott

1

आपको केवल क्लोन रिपोजिटरी की आवश्यकता है। इस अन्य भंडार में आप केवल वही टैग दबा सकते हैं जो आप चाहते हैं और शाखाएं जिन्हें आप चाहते हैं कि आप चाहते हैं।

+0

मेरे उपयोग के मामले के लिए वर्कफ़्लो "एक रिपोजिटॉय के आंशिक क्लोन का निर्माण (उदाहरण के लिए ग्राहकों)": 1. क्लोन विकास भंडार 2. क्लोन में सभी शाखाएं हटाएं जिन्हें आप अपने ग्राहक को नहीं दिखाना चाहते हैं 3. केवल शाखाएं दबाएं आपके क्लोन में ग्राहक को दिखाई देगी। समस्या: 1. और 2. यदि आपके पास कई शाखाएं हैं तो बहुत समय लगेगा। मुझे लगता है कि मुझे अपनी समस्या का समाधान मिला: http://git-wt-commit.rubyforge.org/#git-publish-branch – dayscott