एंड्रॉइड कोड के साथ काम करने के लिए Git (एक ओपन-सोर्स वर्जन-कंट्रोल सिस्टम) और रेपो (एक Google द्वारा निर्मित रिपॉजिटरी-मैनेजमेंट टूल जो Git के शीर्ष पर चलता है) का उपयोग करने की आवश्यकता होती है। नियमित कार्यों के सारांश के लिए स्रोत नियंत्रण वर्कफ़्लो देखें, जैसे कि समीक्षा के लिए परिवर्तन अपलोड करना।
गित
Git को बड़ी परियोजनाओं को संभालने के लिए डिज़ाइन किया गया है जो कई रिपॉजिटरी में वितरित की जाती हैं। एंड्रॉइड लोकल ऑपरेशंस जैसे कि लोकल ब्रांचिंग, कमिट्स, डिफरेंसेस और एडिट्स के लिए Git का इस्तेमाल करता है। एंड्रॉइड प्रोजेक्ट को स्थापित करने में आने वाली चुनौतियों में से एक यह पता लगाना था कि बाहरी समुदाय का सबसे अच्छा समर्थन कैसे किया जाए - बड़े पैमाने पर बाजार उपभोक्ता उपकरणों का निर्माण करने वाले बड़े ओईएम से। हम चाहते थे कि घटक बदली जा सकें, और हम चाहते थे कि दिलचस्प घटक एंड्रॉइड के बाहर अपने स्वयं के जीवन हो। हमने पहले एक वितरित संशोधन नियंत्रण प्रणाली को चुना, फिर इसे गिट तक सीमित कर दिया।
Git पर अधिक जानकारी के लिए, Git दस्तावेज़ीकरण देखें।
रेपो
रेपो आवश्यक होने पर Git रिपॉजिटरी को एकीकृत करता है, Gerrit संशोधन नियंत्रण प्रणाली पर अपलोड करता है , और Android विकास वर्कफ़्लो के कुछ हिस्सों को स्वचालित करता है।
रेपो दो भागों में आता है: रेपो लॉन्चर जिसे आप गिट-रेपो-डाउनलोड से डाउनलोड और इंस्टॉल करते हैं । यह एक पायथन स्क्रिप्ट है जो एक चेकआउट को इनिशियलाइज़ करना जानती है और दूसरा स्रोत, पूर्ण रेपो टूल डाउनलोड कर सकती है, जिसमें एंड्रॉइड सोर्स कोड चेकआउट शामिल है। पूरा रेपो टूल $SRCDIR/.repo/repo/...
में डिफ़ॉल्ट रूप से है और डाउनलोड किए गए रेपो लॉन्चर से अग्रेषित कमांड प्राप्त करता है।
रेपो का मतलब Git को बदलना नहीं है, केवल Android के संदर्भ में Git के साथ काम करना आसान है। यह एंड्रॉइड सुपरप्रोजेक्ट में Git प्रोजेक्ट्स को एग्रीगेट करने के लिए प्रकट फाइलों का उपयोग करता है। repo
कमांड एक निष्पादन योग्य पायथन लिपि है जिसे आप अपने रास्ते में कहीं भी रख सकते हैं। एंड्रॉइड स्रोत फ़ाइलों के साथ काम करने में, आप आरपीओ का उपयोग पूरे नेटवर्क के संचालन के लिए करते हैं, उदाहरण के लिए, एकल रेपो वर्किंग डायरेक्टरी के साथ।
ज्यादातर स्थितियों में, आप रेपो के बजाय Git का उपयोग कर सकते हैं या जटिल कमांड बनाने के लिए रेपो और Git कमांड को मिला सकते हैं। हालाँकि, मूल-नेटवर्क संचालन के लिए रेपो का उपयोग करना आपके काम को बहुत सरल बनाता है। रेपो पर अधिक जानकारी के लिए, रेपो कमांड संदर्भ ,रेपो README , प्री-लोड हुक (परीक्षण) देखें जो रेपो में सक्षम हो सकते हैं, और एओएसपी में सामान्य डॉक्स ।
जेरिट
गेरिट उन परियोजनाओं के लिए एक वेब-आधारित कोड समीक्षा प्रणाली है जो गिट का उपयोग करती है। जेरिट सभी अधिकृत उपयोगकर्ताओं को परिवर्तन प्रस्तुत करने की अनुमति देकर Git के अधिक केंद्रीकृत उपयोग को प्रोत्साहित करता है, जो कोड समीक्षा पास करने पर स्वचालित रूप से विलय हो जाते हैं। इसके अलावा, गेरिट समीक्षा को आसान बनाता है, ब्राउज़र में साइड में बदलाव दिखाता है और इनलाइन टिप्पणियों को सक्षम करता है।
पर एंड्रॉयड Gerrit समीक्षा इंटरफ़ेस का पता लगाएं android-review.googlesource.com और कम से कोड नेविगेशन इंटरफ़ेस android.googlesource.com ।
Android कोड खोज
Android कोड खोज आपको कुछ भी डाउनलोड किए बिना AOSP को खोजने की अनुमति देता है। आप AOSP स्रोत कोड देखने के लिए कोड खोज का उपयोग कर सकते हैं, ओपन सोर्स शाखाओं के बीच स्विच कर सकते हैं और क्रॉस-रेफरेंस नेविगेट कर सकते हैं। अधिक जानकारी के लिए, कोड खोज प्रलेखन के लिए Google डेवलपर्स साइट देखें।
अन्य उपकरण
एंड्रॉइड स्टूडियो एंड्रॉइड ऐप डेवलपमेंट के लिए आधिकारिक एकीकृत विकास वातावरण (आईडीई) है।
Android डीबग ब्रिज (ADB) आपको अपने विकास कार्य केंद्र को सीधे अपने Android डिवाइस से कनेक्ट करने देता है ताकि आप पैकेजों को स्थापित कर सकें और अपने परिवर्तनों का मूल्यांकन कर सकें।
रेपो को स्थापित करना
रेपो एक उपकरण है जो Android के संदर्भ में Git के साथ काम करना आसान बनाता है। इसके उद्देश्य और संबंधित दस्तावेजों के लिंक के लिए ऊपर दिए गए रेपो अवलोकन को देखें।
रेपो दो भागों में आता है: एक आपके द्वारा स्थापित एक लॉन्चर स्क्रिप्ट है, और यह दूसरे भाग के साथ संचार करता है, एक स्रोत कोड चेकआउट में शामिल पूर्ण रेपो टूल। रेपो स्थापित करने के लिए:
सुनिश्चित करें कि आपके घर निर्देशिका में एक
bin/
निर्देशिका है और यह आपके पथ में शामिल है:mkdir ~/bin
PATH=~/bin:$PATH
रेपो लॉन्चर डाउनलोड करें और सुनिश्चित करें कि यह निष्पादन योग्य है:
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
वैकल्पिक रूप से सत्यापित करें कि लांचर हमारे हस्ताक्षरों से मेल खाता है:
gpg --recv-key 8BB9AD793E8E6153AF0F9A4416530D5E920F5C65
curl https://storage.googleapis.com/git-repo-downloads/repo.asc | gpg --verify - ~/bin/repo
विरासत पायथन 2 सिस्टम के लिए पुराने रेपो
यदि आप पायथन 3.6+ के बिना किसी पुराने सिस्टम का उपयोग कर रहे हैं, तो रेपो लॉन्चर के पुराने संस्करण को डाउनलोड करने का प्रयास करें जो अभी भी पायथन 2.7 का समर्थन करता है। यह अनिश्चित काल तक काम नहीं करेगा, लेकिन आपकी प्रणाली के अपग्रेड होने तक मदद कर सकता है।
curl https://storage.googleapis.com/git-repo-downloads/repo-1 > ~/bin/repo
chmod a+x ~/bin/repo