सामग्री पर जाएं

में योगदान Ultralytics खुला स्रोत YOLO खजाने

सबसे पहले, योगदान करने में आपकी रुचि के लिए धन्यवाद Ultralytics खुला स्रोत YOLO खजाने! आपका योगदान परियोजना को बेहतर बनाने और समुदाय को लाभान्वित करने में मदद करेगा। यह दस्तावेज़ आपको प्रारंभ करने के लिए दिशानिर्देश और श्रेष्ठ अभ्यास प्रदान करता है.

विषय-सूची

  1. आचार संहिता
  2. पुल अनुरोधों के माध्यम से योगदान करना
  3. रिपोर्टिंग बग
  4. लाइसेंस
  5. समाप्ति

आचार संहिता

सभी योगदानकर्ताओं से अपेक्षा की जाती है कि वे सभी के लिए एक स्वागत योग्य और समावेशी वातावरण सुनिश्चित करने के लिए आचार संहिता का पालन करें।

पुल अनुरोधों के माध्यम से योगदान करना

हम पुल अनुरोधों के रूप में योगदान का स्वागत करते हैं। समीक्षा प्रक्रिया को आसान बनाने के लिए, कृपया इन दिशानिर्देशों का पालन करें:

  1. रिपॉजिटरी को फोर्क करें: फोर्क द Ultralytics YOLO अपने स्वयं के GitHub खाते में भंडार।

  2. एक शाखा बनाएँ: अपने परिवर्तनों के लिए एक वर्णनात्मक नाम के साथ अपने फोर्कड रिपॉजिटरी में एक नई शाखा बनाएं।

  3. अपने बदलाव करें: वे बदलाव करें, जिनमें आप योगदान देना चाहते हैं. सुनिश्चित करें कि आपके परिवर्तन परियोजना की कोडिंग शैली का पालन करते हैं और नई त्रुटियों या चेतावनियों का परिचय नहीं देते हैं।

  4. अपने परिवर्तनों का परीक्षण करें: यह सुनिश्चित करने के लिए स्थानीय रूप से अपने परिवर्तनों का परीक्षण करें कि वे अपेक्षानुसार काम करते हैं और नई समस्याएँ प्रस्तुत नहीं करते हैं.

  5. अपने परिवर्तन करें: वर्णनात्मक प्रतिबद्ध संदेश के साथ अपने परिवर्तन करें। अपने प्रतिबद्ध संदेश में किसी भी प्रासंगिक समस्या संख्या को शामिल करना सुनिश्चित करें।

  6. एक पुल अनुरोध बनाएं: अपने फोर्कड रिपॉजिटरी से मुख्य तक एक पुल अनुरोध बनाएंUltralytics YOLO कोष। पुल अनुरोध विवरण में, अपने परिवर्तनों की स्पष्ट व्याख्या प्रदान करें और वे परियोजना को कैसे बेहतर बनाते हैं।

सीएलए साइनिंग

इससे पहले कि हम आपके पुल अनुरोध को स्वीकार कर सकें, आपको एक योगदानकर्ता लाइसेंस समझौते (सीएलए) पर हस्ताक्षर करने की आवश्यकता है। यह एक कानूनी दस्तावेज है जिसमें कहा गया है कि आप इसमें योगदान करने की शर्तों से सहमत हैं Ultralytics YOLO खजाने। सीएलए यह सुनिश्चित करता है कि आपके योगदान को ठीक से लाइसेंस दिया गया है और परियोजना को निम्नलिखित के तहत वितरित किया जाना जारी रखा जा सकता है AGPL-3.0 लाइसेंस।

सीएलए पर हस्ताक्षर करने के लिए, अपना पीआर जमा करने के बाद सीएलए बॉट द्वारा दिए गए निर्देशों का पालन करें और अपने पीआर में एक टिप्पणी जोड़ें:

I have read the CLA Document and I sign the CLA

Google-शैली के डॉकस्ट्रिंग

नए फ़ंक्शन या कक्षाएं जोड़ते समय, कृपया अन्य डेवलपर्स के लिए स्पष्ट और संक्षिप्त दस्तावेज प्रदान करने के लिए Google-शैली के डॉकस्ट्रिंग को शामिल करें। इससे यह सुनिश्चित करने में मदद मिलेगी कि आपके योगदान को समझना और बनाए रखना आसान है।

उदाहरण डॉकस्ट्रिंग

यह उदाहरण Google-शैली के दोनों डॉकस्ट्रिंग दिखाता है। ध्यान दें कि इनपुट और आउटपुट दोनों types हमेशा कोष्ठक से घिरा होना चाहिए, अर्थात। (bool).

def example_function(arg1, arg2=4):
    """
    Example function that demonstrates Google-style docstrings.

    Args:
        arg1 (int): The first argument.
        arg2 (int): The second argument. Default value is 4.

    Returns:
        (bool): True if successful, False otherwise.

    Examples:
        >>> result = example_function(1, 2)  # returns False
    """
    if arg1 == arg2:
        return True
    return False

यह उदाहरण Google-शैली के डॉकस्ट्रिंग और तर्क और वापसी प्रकार संकेत दोनों दिखाता है, हालांकि दोनों की आवश्यकता नहीं है, एक का उपयोग दूसरे के बिना किया जा सकता है।

def example_function(arg1: int, arg2: int = 4) -> bool:
    """
    Example function that demonstrates Google-style docstrings.

    Args:
        arg1: The first argument.
        arg2: The second argument. Default value is 4.

    Returns:
        True if successful, False otherwise.

    Examples:
        >>> result = example_function(1, 2)  # returns False
    """
    if arg1 == arg2:
        return True
    return False

छोटे या सरल कार्य एकल-पंक्ति डॉकस्ट्रिंग का उपयोग कर सकते हैं। ध्यान दें कि डॉकस्ट्रिंग को 3 डबल-कोट्स का उपयोग करना चाहिए, और एक पूर्ण वाक्य होना चाहिए जो एक बड़े अक्षर से शुरू होता है और एक अवधि के साथ समाप्त होता है।

def example_small_function(arg1: int, arg2: int = 4) -> bool:
    """Example function that demonstrates a single-line docstring."""
    return arg1 == arg2

GitHub क्रियाहरू CI परीक्षण

इससे पहले कि आपके पुल अनुरोध को मर्ज किया जा सके, सभी GitHub क्रियाएँ निरंतर एकीकरण (CI) परीक्षण पास होने चाहिए। इन परीक्षणों में यह सुनिश्चित करने के लिए लाइनिंग, यूनिट परीक्षण और अन्य जांच शामिल हैं कि आपके परिवर्तन परियोजना के गुणवत्ता मानकों को पूरा करते हैं। GitHub क्रियाओं के आउटपुट की समीक्षा करना और किसी भी समस्या को ठीक करना सुनिश्चित करें

रिपोर्टिंग बग

हम बग रिपोर्ट की सराहना करते हैं क्योंकि वे परियोजना की गुणवत्ता बनाए रखने में महत्वपूर्ण भूमिका निभाते हैं। बग की रिपोर्ट करते समय न्यूनतम प्रतिलिपि प्रस्तुत करने योग्य उदाहरण प्रदान करना महत्वपूर्ण है: एक स्पष्ट, संक्षिप्त कोड उदाहरण जो समस्या को दोहराता है। यह बग की त्वरित पहचान और समाधान में मदद करता है।

लाइसेंस

Ultralytics GNU Affero जनरल पब्लिक लाइसेंस v3.0 (AGPL-3.0) इसके रिपॉजिटरी के लिए, सॉफ्टवेयर विकास में खुलेपन, पारदर्शिता और सहयोगी वृद्धि को बढ़ावा देना। यह मजबूत कॉपीलेफ्ट लाइसेंस सुनिश्चित करता है कि सभी उपयोगकर्ता और डेवलपर्स सॉफ़्टवेयर का उपयोग करने, संशोधित करने और साझा करने की स्वतंत्रता बनाए रखें। यह सामुदायिक सहयोग को बढ़ावा देता है, यह सुनिश्चित करता है कि कोई भी सुधार सभी के लिए सुलभ रहे।

उपयोगकर्ताओं और डेवलपर्स को की शर्तों के साथ खुद को परिचित करने के लिए प्रोत्साहित किया जाता है AGPL-3.0 प्रभावी ढंग से और नैतिक रूप से योगदान करने के लिए Ultralytics ओपन-सोर्स समुदाय।

समाप्ति

योगदान करने में आपकी रुचि के लिए धन्यवाद Ultralytics' खुला स्रोत YOLO परियोजनाओं। आपकी भागीदारी हमारे सॉफ्टवेयर के भविष्य को आकार देने और नवाचार और सहयोग के समुदाय को बढ़ावा देने में महत्वपूर्ण है। चाहे आप कोड में सुधार कर रहे हों, बग की रिपोर्ट कर रहे हों, या सुविधाओं का सुझाव दे रहे हों, आपके योगदान महत्वपूर्ण प्रभाव डालते हैं।

हम आपके विचारों को कार्रवाई में देखने के लिए उत्सुक हैं और ऑब्जेक्ट डिटेक्शन तकनीक को आगे बढ़ाने के लिए आपकी प्रतिबद्धता की सराहना करते हैं। आइए इस रोमांचक ओपन-सोर्स यात्रा में एक साथ बढ़ना और नया करना जारी रखें। हैप्पी कोडिंग! 🚀🌟



2023-11-12 बनाया गया, अपडेट किया गया 2024-01-24
लेखक: ग्लेन-जोचर (3)

टिप्पणियाँ