2013-03-21 5 views
6

मेरे पास एक फ़ाइल है जिसमें एक बार संवेदनशील कॉन्फ़िगरेशन जानकारी होती है। मैं उस कॉन्फ़िगरेशन जानकारी को दूसरी फ़ाइल में ले जाता हूं जो संस्करण नियंत्रण में नहीं है। मैं दूसरी फ़ाइल को वर्जन कंट्रोल के तहत रखना चाहता हूं, लेकिन मैं इसका इतिहास हटाना चाहता हूं क्योंकि कोई आसानी से गिटूब पर स्रोत ब्राउज़ कर सकता है और पिछले काम में संवेदनशील जानकारी पा सकता है। ऐसा करने का सबसे अच्छा तरीका क्या है? मैं केवल यह देख रहा हूं कि फ़ाइल को संस्करण नियंत्रण से कैसे हटाएं और इसके इतिहास को साफ़ करें।संवेदनशील डेटा को हटाएं लेकिन गिट इतिहास से फ़ाइल नहीं

गिट के लिए थोड़ा नया, तो नवजातता को क्षमा करें।

+2

बहुत आम प्रश्न: http://stackoverflow.com/q/872565/1286639 – GoZoner

+0

गिथब के पास [पोस्ट] (https://help.github.com/articles/remove-sensitive-data) बस ऐसा करने के लिए है । इसकी जांच - पड़ताल करें। –

उत्तर

3

आप इस लेख https://help.github.com/articles/remove-sensitive-data

को देखने के लिए चाहते हो सकता है सुंदर ज्यादा इस आदेश

git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch Rakefile' \ 
    --prune-empty --tag-name-filter cat -- --all 

Git से Rakefile के इतिहास हटा देंगे कहते हैं। हालांकि, वे आगे बढ़ते हैं और उस फ़ाइल को उनके गिटिनोरोर में जोड़ते हैं। आपको उस भाग को छोड़ना चाहिए क्योंकि आप फ़ाइल को वर्जन कंट्रोल में रखना चाहते हैं।

+1

वास्तव में जो कुछ करता है उसका स्पष्टीकरण बहुत अच्छा होगा। – user3467349

+1

लिंक किया गया आलेख बताता है कि फ़ाइल को कैसे निकालना है। ओपी का सवाल शीर्षक फाइल को हटाने के लिए नहीं कहता है। –

+0

@ टाइटलरॉलियर यदि आप मेरा जवाब पढ़ते हैं तो यह कहता है कि फ़ाइल को 'gitignore' में नहीं जोड़ना है क्योंकि यह इसे संस्करण नियंत्रण से बाहर ले जाएगा। यह इतिहास से फ़ाइल को हटा देगा जिससे संवेदनशील डेटा को हटा दिया जा सकेगा। –

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