2012-10-20 52 views
9

एक Git (कार्य) निर्देशिका को अद्यतन करने से जड़ को रोकने के लिए की जरूरत है। तर्क में शामिल है लेकिन इस तक सीमित नहीं है: अंडरएयर फ़ाइल-सिस्टम स्वामित्व में परिवर्तन को रोकना।गिट खींचने से रूट को कैसे रोकें?

कोई भी गिट हुक को पूर्व-प्रतिबद्ध हुक के समान होने से पहले एक fetch/merge/pull को रोकने से पहले प्रतीत होता है। या कम से कम, मैं यहां कुछ भी नहीं देखता (या मैन पेज में): http://www.analysisandsolutions.com/code/git-hooks-summary-cheat-sheet.htm

विचार?

+4

* "रूट को रोकने के [...]" * - मुझे लगता है कि संभव है नहीं लगता। – poke

+0

क्यों? आप जिस वास्तविक समस्या से बचने की कोशिश कर रहे हैं वह क्या है? यदि आप रूट के स्वामित्व से अपने भंडार में फ़ाइलों को रोकने की कोशिश कर रहे हैं, तो रूट के रूप में लॉग इन होने पर खींचें नहीं। – meagar

+1

@meagar पहले से ही यह कर रहा है। हां, एक टीम के माहौल में जहां कई लोगों के पास रूट/सूडो पहुंच है। विशेष रूप से लोगों को रूट के रूप में लॉग इन करने और उन चीज़ों को अनजाने में बदलने से रोकना चाहते हैं जिन्हें वे नहीं करना चाहिए। कभी-कभी लोग पुरानी आदतों को भूल जाते हैं (हमें अपडेट के लिए रूट/सूडो निजी की आवश्यकता होती है, लेकिन अब नहीं), रूट के रूप में लॉगिन करें, और जो सामान उन्हें नहीं करना चाहिए। –

उत्तर

4

एक ही रास्ता मैंने देखा कि इस का समाधान नहीं है, लेकिन कम से कम "कम" Git आदेश के लिए एक आवरण के माध्यम से किया गया था:

सभी Git आदेशों इस आवरण जो यदि प्रयोक्ता आईडी जड़ नहीं है आगे बढ़ता है के माध्यम से जाना।

8

बदलें /root/.bashrcPATH की शुरुआत के लिए एक नया निर्देशिका जोड़ने के लिए। कुछ केवल पढ़ने के लिए आदेश (दिखाएँ/स्थिति/log/राजस्व-सूची आदि) और /usr/bin/git "[email protected]" कॉल करता है, तो आदेश स्वीकार्य है जोड़ें खोल स्क्रिप्ट वहाँ git कि $1 परीक्षण कहा जाता है में से एक है। यह किसी भी व्यक्ति को आपकी टीम पर गलती से git pull को रूट के रूप में चलाने से रोक देगा। आप के बारे में उन्हें यह जान-बूझकर कर चिंतित हैं, तो आप बड़ी समस्याओं है ...

+5

अभी तक बेहतर है, कमांड को सिर्फ एक त्रुटि संदेश प्रिंट करें जैसे 'कृपया रूट के रूप में गिट चलाएं'। –

+2

मेरे मामले में यह मेरे विभाग का प्रबंधक है जो 'सुडो सु' करता रहता है जब भी उसे कुछ करने की अनुमति नहीं होती है। फिर वह एक गिट खींचता है और मेरी फाइलों को खराब करता है। मैं बस किसी भी गिट कमांड के लिए एक त्रुटि संदेश चाहता हूं जो कहता है "गिट कमांड को जड़ के रूप में कभी नहीं चलाएं! मेरी फाइल अनुमतियों को गड़बड़ करना बंद करो!" – Mnebuerquo