एक ओपन सोर्स एप्लिकेशन को संशोधित करना


9

जब मैं मूल रूप से नहीं लिखता था, तो एक खुले स्रोत के अनुप्रयोग में एक सुविधा जोड़ना चाहता हूं, तो सामान्य वर्कफ़्लो क्या है? मुझे कोड कैसे पता चलेगा? मुझे वह स्थान कैसे मिलेगा जिसे बदलने या जोड़ने की आवश्यकता है? मैं वास्तव में कुछ और तोड़ने के बिना परिवर्तन कैसे कर सकता हूं? मैं कैसे परीक्षण करूं कि सब कुछ अभी भी काम कर रहा है?
ऐसी परियोजना पर सामान्य दिशानिर्देश क्या हैं?


2
आपको आमतौर पर एक पैच के रूप में, परियोजना में अपने परिवर्तन प्रस्तुत करने चाहिए , ताकि दूसरों को लाभ हो सके।

जवाबों:


6

कुछ प्रोटोकॉल है, हर कोई कम या ज्यादा इसे समय के साथ उतारता है, लेकिन यहां यह अनियंत्रित है।

  • आप वितरित स्रोत डाउनलोड करें।
  • आप अपने आप से कोड को थोड़ा नेविगेट करना शुरू करते हैं

    • यदि यह एक संकलित कार्यक्रम है, तो आप अब इसे संकलित करना सीखते हैं
    • यदि आप इसे संकलित करने में विफल रहते हैं, तो आप लेखक / मेलिंग सूची को रिपोर्ट करते हैं और निर्देश पूछते हैं
  • यदि आप वास्तव में कोड के बारे में एक बात नहीं समझते हैं ...

    • ठीक है, नहीं, आप उनसे नहीं पूछते हैं।
    • आप इसे छोड़ देते हैं, जैसा कि आप शायद बराबर नहीं हैं और किसी भी वास्तविक मदद का नहीं हो सकता।
    • आप एक सुविधा सबमिट करते हैं यदि लेखक सुविधा अनुरोध स्वीकार करता है।
  • अन्य

    • आपको वह स्थान मिल जाता है जिसे आप बदलना चाहते हैं।

    • यदि आप कुछ मामूली विस्तार के बारे में आश्चर्य करते हैं, तो आप लेखक / मेलिंग सूची से पूछते हैं, और अपने इरादों को समझाते हैं।

    • आप वितरण के मुख्य निर्देशिका के लिए सीडी (शीर्ष अनटारिंग / अनज़िपिंग से बाहर आ रहे हैं)

    • आप diff -ur . > mypatch.path

    • आप mypatch.patchलेखक को यह समझाते हुए भेजते हैं कि आपने क्या किया, आपने ऐसा क्यों किया, और (जैसा कि आप पहले से ही वहां हैं) आप स्पष्ट रूप से कहते हैं कि आप पैच पर उनके अधिकारों को माफ करते हैं।

  • यदि लेखक आपके योगदान को पसंद नहीं करता है

    • यदि आप किसी प्रकार के प्लगइन के रूप में अपने संशोधन को जारी करने का एक तरीका है, तो यह देखें

      • उस स्थिति में, अब आप एक मेन्टेनर प्लगइन बनने की राह पर हैं
    • अन्य

      • आप अपने ब्लॉग की स्थिति के बारे में जानकारी प्राप्त करते हैं और वहां पर पैच जारी करते हैं, अपने स्पष्टीकरण और अपने रेंट के साथ डाउनलोड करने और आज़माने के लिए स्वतंत्र हैं,

      • आप अब और फिर बग प्रणाली / मेलिंग सूची को अपने पैच के लिए समर्थन खरीदने की कोशिश कर रहे हैं। प्रतिबंध लगाने से बचें।

    • इन मामलों में से कोई भी आप कोड को कांटा करते हैं , क्योंकि यह एक बहुत थका देने वाला और अप्रसांगिक प्रक्रिया है जिसे आप शायद ही समय के साथ रख पाएंगे: जो उपयोगकर्ताओं को दुखी और भ्रमित कर देगा। फोर्क शॉड वास्तव में केवल तभी होता है जब एक बड़ा निगम ओएसएस के एक टुकड़े पर अपने फैसले को धमकाने की कोशिश कर रहा हो

  • अन्य

    • आपको उस लेखक से और निर्देश प्राप्त होंगे

पक्ष में: diff -ur .पैच का एक हालिया विकल्प है और जीथबब तरीका है

  • आप अपने नाम के तहत जीथब पर उनके कोड को "कांटा" करते हैं,
    (अब आपके खाते में उनके कोड की एक प्रति है)
  • अपनी व्यक्तिगत प्रति के लिए अपने git से कनेक्ट करें,
  • उस पर अपना संशोधन करें, उन्हें जाँचें,
  • और अपने github प्रोजेक्ट को देखने के लिए मुख्य लेखक को बताएं।

  • यदि वे इसे पसंद करते हैं, तो वे सिंक्रनाइज़ करेंगे ।

  • अन्यथा, आप अपने "gitfork" को अपने ब्लॉग पर लिंक कर सकते हैं।

जब तक आप सुझाव देते हैं कि सभी अच्छे ओपी नए फीचर पैच को गले नहीं लगाने के लिए उत्पाद लेखकों को लपटें हैं, यह स्पष्ट नहीं है कि क्या यह मजाकिया या गंभीर माना जाता था, किसी भी तरह से, यह पूरी तरह से पूरी दुनिया में एक छोटे बच्चे की तरह प्रभावी रूप से रोने के लिए बहुत बुरा है क्योंकि एक उत्पाद टीम आपके नए फ़ीचर पैच को पसंद नहीं करती / चाहती है। हर तरह से, इसे पोस्ट करें, लेकिन हमेशा अगर यह स्वीकार नहीं किया जाता है कि यह कितना अतार्किक निर्णय लगता है, तो इसे सर्वसम्मति से स्वीकार करें। -1 - FYI करें, मैं ख़ुशी से अपने वोट को उलट दूंगा, अगर आप इसे हटा देते हैं।
ओसोडो

मैं जिस एप्लिकेशन को बदलना चाहता हूं वह एक सख्त मानक का पालन कर रहा है जो मेरे बदलावों के साथ मानक को तोड़ देगा। मुझे लगता है कि मैं अपने पैच को लागू करने के लिए कहने की स्थिति में नहीं हूं।
दानी

@Slomojo OSS अपरिपक्व लोगों से भरा हुआ है, और उस तरह की बात हर समय होती है, हर किसी को खच्चर की तरह काम करने के लिए तैयार रहना चाहिए और फिर इस आधार पर खारिज कर दिया जाना चाहिए कि कभी ठोस होते हैं और कभी कभी मूट होते हैं । और फिर, कम से कम, आपके पास हमेशा इसके बारे में शेख़ी मारने का मौका होता है और ऐसे लोगों को ढूंढते हैं जो आपको लगता है कि शायद सही हैं। अब, इसके बावजूद , यह गलत और बहुत ही कठोर कदम उठाना होगा।
ZJR

@ दानी लोल, आपको वास्तव में एक पैच लेना होगा और इसके बारे में शेख़ी बनानी होगी । फोर्किंग से बचें क्योंकि यह आपके जीवन का उपभोग करेगा, ऐसा लगता है जैसे बिना तनख्वाह के निरंतरता को बनाए रखना। ... वैसे भी, मेलिंग सूची और बग रिपोर्ट प्रणाली के साथ जांचें अगर कोई है, तो यह देखने के लिए कि क्या किसी को इस तरह के विस्तार में रुचि होगी, शायद आप अकेले नहीं हैं। Aaaand सबसे अच्छा होगा कि उनमें कुछ API का विस्तार करने के लिए या आपके परिवर्तनों को प्लग-इन करने के लिए एक प्लगइन-चीज़ है। यह हमेशा ऐसे मामलों में सबसे अच्छा विकल्प होता है: एक प्लगइन की नकल करना । ... को संपादित करेगा।
ZJR

2
यदि स्वचालित परीक्षण के मामले हैं, तो पैच को सबमिट करने से पहले उन्हें चलाएं।
oenone

0

आमतौर पर।

यदि यह एक यादृच्छिक ओएस परियोजना थी, तो आप सबसे अधिक संभावना है कि यहां और वहां मामूली कीड़े ठीक करेंगे।

आखिरकार आप "पैच" के रूप में बदलावों का एक गुच्छा प्रस्तुत करेंगे।

यदि आपका सामान अच्छा है तो आमतौर पर आपको कमिटेड अधिकार मिल जाएगा।

मैं आम तौर पर और अस्पष्ट और निरर्थक के रूप में बात कर रहा हूँ सवाल के कारण

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.