2010-11-04 18 views
27

है तो एक गिट प्रोजेक्ट ओपन सोर्स बनाना मेरे पास एक निजी भंडार के पीछे गिटहब पर एक प्रोजेक्ट है। मैं रेपो सार्वजनिक बनाना चाहता हूं। हालांकि, मेरी परियोजना गुप्त कुंजी का उपयोग करती है।जब आपके पास गुप्त कुंजी

अभी भी उन गुप्त कुंजी के "इतिहास" की रक्षा करते समय मैं परियोजना को सार्वजनिक कैसे बना सकता हूं? मुझे लगता है कि मैं एसओएल हूं, और अपने उपयोग को रोकने के लिए केवल चाबियाँ अमान्य करनी चाहिए।

ध्यान दें कि यह How to open-source an application that uses API keys

या

How to handle 'open-sourcing' your application, when it uses a personal API key?

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

उत्तर

25

आप git filter-branch जैसे हथौड़ा का उपयोग करके भंडार से गुप्त कुंजी को हटा सकते हैं। GitHub's help pages पर एक अच्छा स्पष्टीकरण है।

+0

मेरी गुप्त कुंजी उदाहरण के लिए settings.py में हैं। क्या समाधान पूरे इतिहास से उस फ़ाइल को पिसाना होगा और फिर गुप्त जानकारी के बिना इसकी सिफारिश करेगा? – Alper

+1

यह सबसे आसान विकल्प है और एक लिंक किए गए पृष्ठ पर समझाया गया है। लेकिन 'गिट फ़िल्टर-शाखा' को पारित आदेश मूल रूप से कुछ भी कर सकता है जो आप चाहते हैं, उदाहरण के लिए 'sed' के माध्यम से फ़ाइल को पास करें। – MForster