@ स्टीफन बेली
अपने उत्तर को पूरा करने के लिए, आप अपने रिपॉजिटरी में एक सादे पाठ फ़ाइल के माध्यम से, परियोजना प्रबंधक को उपयोगकर्ता अधिकार सौंप सकते हैं।
ऐसा करने के लिए, आप अपने SVN डेटाबेस को डिफ़ॉल्ट authz
फ़ाइल के साथ सेट करते हैं, जिसमें निम्नलिखित हैं:
###########################################################################
# The content of this file always precedes the content of the
# $REPOS/admin/acl_descriptions.txt file.
# It describes the immutable permissions on main folders.
###########################################################################
[groups]
svnadmins = xxx,yyy,....
[/]
@svnadmins = rw
* = r
[/admin]
@svnadmins = rw
@projadmins = r
* =
[/admin/acl_descriptions.txt]
@projadmins = rw
यह डिफ़ॉल्ट authz
फ़ाइल SVN व्यवस्थापकों को आपके SVN रिपॉजिटरी के भीतर एक दृश्यमान सादे पाठ फ़ाइल को संशोधित करने के लिए अधिकृत करती है, जिसे '/admin/acl_desults.txt' कहा जाता है , जिसमें SVN व्यवस्थापक या प्रोजेक्ट प्रबंधक उपयोगकर्ताओं को संशोधित और पंजीकृत करेंगे।
फिर आप एक पूर्व-प्रतिबद्ध हुक सेट करते हैं जो यह पता लगाएगा कि संशोधन उस फ़ाइल (और केवल उस फ़ाइल) से बना है या नहीं।
यदि यह है, तो यह हुक की स्क्रिप्ट आपके सादे पाठ फ़ाइल की सामग्री को मान्य करेगी और जाँच करेगी कि क्या प्रत्येक पंक्ति SVT सिंटैक्स के साथ अनुरूप है।
फिर एक के बाद प्रतिबद्ध हुक अद्यतन करेगा \conf\authz
के साथ फ़ाइल संयोजन की:
- खाका
authz
फ़ाइल ऊपर प्रस्तुत
- सादा पाठ फ़ाइल
/admin/acl_descriptions.txt
पहला पुनरावृत्ति SVN व्यवस्थापक द्वारा किया जाता है, जो जोड़ता है:
[groups]
projadmins = zzzz
वह अपना संशोधन करता है, और यह authz
फ़ाइल को अपडेट करता है।
फिर परियोजना प्रबंधक 'zzzz' उपयोगकर्ताओं के किसी भी समूह को जोड़ सकता है, हटा सकता है या घोषित कर सकता है। वह फाइल को कमिट करता है और authz
फाइल अपडेट हो जाती है।
इस तरह, SVN व्यवस्थापक को व्यक्तिगत रूप से सभी SVN रिपॉजिटरी के लिए किसी भी और सभी उपयोगकर्ताओं को प्रबंधित करने की आवश्यकता नहीं है ।