উৎস নিয়ন্ত্রণ সরঞ্জাম

অ্যান্ড্রয়েড কোডের সাথে কাজ করার জন্য গিট (একটি ওপেন-সোর্স সংস্করণ-নিয়ন্ত্রণ সিস্টেম) এবং রেপো (একটি Google-নির্মিত সংগ্রহস্থল-ব্যবস্থাপনা সরঞ্জাম যা গিট-এর উপরে চলে) উভয়ই ব্যবহার করতে হবে। পর্যালোচনার জন্য পরিবর্তনগুলি আপলোড করার মতো আপনি যে নিয়মিত পদক্ষেপগুলি নিতে পারেন তার সারসংক্ষেপের জন্য উত্স নিয়ন্ত্রণ কর্মপ্রবাহ পৃষ্ঠাটি দেখুন৷

গিট

গিট বড় প্রকল্পগুলি পরিচালনা করে যা একাধিক সংগ্রহস্থলে বিতরণ করা হয়। অ্যান্ড্রয়েড স্থানীয় ক্রিয়াকলাপগুলির জন্য গিট ব্যবহার করে যেমন স্থানীয় শাখা, কমিট, ডিফ এবং সম্পাদনা। অ্যান্ড্রয়েড প্রজেক্ট সেট আপ করার ক্ষেত্রে চ্যালেঞ্জগুলির মধ্যে একটি হল কীভাবে বাইরের সম্প্রদায়কে সর্বোত্তমভাবে সমর্থন করা যায় তা নির্ধারণ করা ছিল—শখের সম্প্রদায় থেকে শুরু করে বৃহৎ OEM-গুলি গণ-বাজার গ্রাহক ডিভাইস তৈরি করে৷ Google চেয়েছিল উপাদানগুলি প্রতিস্থাপনযোগ্য হতে, এবং আকর্ষণীয় উপাদানগুলিকে Android এর বাইরে তাদের নিজস্ব জীবনযাপন করতে চেয়েছিল৷ Google প্রথমে একটি বিতরণ করা পুনর্বিবেচনা নিয়ন্ত্রণ ব্যবস্থা বেছে নেয়, তারপর এটিকে গিট পর্যন্ত সংকুচিত করে।

গিট সম্পর্কে আরও বিস্তারিত জানার জন্য, এই গিট ডকুমেন্টেশন পড়ুন।

রেপো

রেপো প্রয়োজনে গিট রিপোজিটরি একত্রিত করে, গেরিট রিভিশন কন্ট্রোল সিস্টেমে আপলোড সঞ্চালন করে এবং অ্যান্ড্রয়েড ডেভেলপমেন্ট ওয়ার্কফ্লো-এর অংশগুলিকে স্বয়ংক্রিয় করে।

রেপো লঞ্চার একটি পাইথন স্ক্রিপ্ট সরবরাহ করে যা একটি চেকআউট শুরু করে এবং দ্বিতীয় অংশটি ডাউনলোড করে, সম্পূর্ণ রেপো টুল। সম্পূর্ণ রেপো টুলটি একটি অ্যান্ড্রয়েড সোর্স কোড চেকআউটে অন্তর্ভুক্ত করা হয়েছে। এটি ডিফল্টরূপে $SRCDIR/.repo/repo/... এ অবস্থিত এবং এটি ডাউনলোড করা রেপো লঞ্চার থেকে ফরোয়ার্ড করা কমান্ড গ্রহণ করে।

রেপো গিটকে প্রতিস্থাপন করে না, এটি শুধুমাত্র অ্যান্ড্রয়েডের প্রসঙ্গে গিটের সাথে কাজ করা সহজ করে তোলে। রেপো অ্যান্ড্রয়েড সুপারপ্রজেক্টে গিট প্রকল্পগুলিকে একত্রিত করতে ম্যানিফেস্ট ফাইলগুলি ব্যবহার করে। আপনি repo কমান্ড রাখতে পারেন, যা একটি এক্সিকিউটেবল পাইথন স্ক্রিপ্ট, আপনার পথের যে কোন জায়গায়। অ্যান্ড্রয়েড সোর্স ফাইলগুলির সাথে কাজ করার সময়, আপনি একটি একক রেপো ওয়ার্কিং ডিরেক্টরির মতো জুড়ে-নেটওয়ার্ক অপারেশনগুলির জন্য রেপো ব্যবহার করতে পারেন।

বেশিরভাগ পরিস্থিতিতে, আপনি রেপোর পরিবর্তে গিট ব্যবহার করতে পারেন, বা জটিল কমান্ড তৈরি করতে রেপো এবং গিট কমান্ডগুলিকে মিশ্রিত করতে পারেন। যাইহোক, বেসিক জুড়ে নেটওয়ার্ক অপারেশনের জন্য রেপো ব্যবহার করে আপনার কাজকে অনেক সহজ করে তোলে। রেপো সম্পর্কে আরও বিশদ বিবরণের জন্য, রেপো কমান্ড রেফারেন্স , রেপো README , প্রি- আপলোড হুকস (পরীক্ষা) দেখুন যা রেপোতে সক্ষম করা যেতে পারে এবং AOSP-এ সাধারণ ডক্স

গিট-রেপো-ডাউনলোড থেকে রেপো লঞ্চার ডাউনলোড এবং ইনস্টল করতে, রেপো ইনস্টল করা দেখুন।

গেরিট

Gerrit হল একটি ওয়েব-ভিত্তিক কোড রিভিউ সিস্টেম যা গিট ব্যবহার করে। গেরিট সমস্ত অনুমোদিত ব্যবহারকারীদের পরিবর্তনগুলি জমা দেওয়ার অনুমতি দিয়ে গিট-এর আরও কেন্দ্রীভূত ব্যবহারকে উত্সাহিত করে, যা তারা কোড পর্যালোচনা পাস করলে স্বয়ংক্রিয়ভাবে একত্রিত হয়। উপরন্তু, Gerrit পর্যালোচনা সহজ করে তোলে, ব্রাউজারে পাশাপাশি পরিবর্তনগুলি প্রদর্শন করে এবং ইনলাইন মন্তব্যগুলি সক্ষম করে৷

android- review.googlesource.com- এ Android Gerrit পর্যালোচনা ইন্টারফেস এবং android.googlesource.com- এ কোড নেভিগেশন ইন্টারফেস খুঁজুন।

অ্যান্ড্রয়েড কোড অনুসন্ধান আপনাকে কিছু ডাউনলোড না করে AOSP অনুসন্ধান করতে দেয়। আপনি AOSP সোর্স কোড দেখতে, ওপেন সোর্স শাখার মধ্যে স্যুইচ করতে এবং ক্রস-রেফারেন্স নেভিগেট করতে কোড অনুসন্ধান ব্যবহার করতে পারেন। আরও তথ্যের জন্য, কোড অনুসন্ধান ডকুমেন্টেশনের জন্য Google বিকাশকারী সাইট দেখুন।

অন্যান্য সরঞ্জাম

অ্যান্ড্রয়েড স্টুডিও অ্যান্ড্রয়েড অ্যাপ ডেভেলপমেন্টের জন্য অফিসিয়াল ইন্টিগ্রেটেড ডেভেলপমেন্ট এনভায়রনমেন্ট (আইডিই)।

অ্যান্ড্রয়েড ডিবাগ ব্রিজ (এডিবি) আপনাকে আপনার ডেভেলপমেন্ট ওয়ার্কস্টেশনকে সরাসরি আপনার অ্যান্ড্রয়েড ডিভাইসের সাথে সংযুক্ত করতে দেয় যাতে আপনি প্যাকেজগুলি ইনস্টল করতে এবং আপনার পরিবর্তনগুলি মূল্যায়ন করতে পারেন৷

অ্যান্ড্রয়েড 10 এবং উচ্চতর সংস্করণের জন্য, অ্যান্ড্রয়েড প্ল্যাটফর্ম বিকাশের জন্য AIDEgen IDE-এর সাথে IntelliJ ব্যবহার করুন।

রেপো ইনস্টল করা হচ্ছে

রেপো ইনস্টল করতে এই পদক্ষেপগুলি অনুসরণ করুন।

  1. আপনার লিনাক্স ডিস্ট্রিবিউশন থেকে অফিসিয়াল প্যাকেজ ব্যবহার করতে এই কমান্ডগুলি চালান:
      sudo apt-get update
      sudo apt-get install repo
    
    যদি এই কমান্ডগুলি আপনার সিস্টেমের জন্য কাজ না করে-উদাহরণস্বরূপ, আপনি দেখতে পাচ্ছেন যে প্যাকেজ সংস্করণটি পুরানো হয়ে গেছে, বা আপনার থেকে কোনও অফিসিয়াল প্যাকেজ উপলব্ধ নেই লিনাক্স বিতরণ, নিম্নলিখিত কমান্ডগুলি ব্যবহার করে ম্যানুয়ালি রেপো ইনস্টল করুন:
    export REPO=$(mktemp /tmp/repo.XXXXXXXXX)
    curl -o ${REPO} https://storage.googleapis.com/git-repo-downloads/repo
    gpg --recv-key 8BB9AD793E8E6153AF0F9A4416530D5E920F5C65
    curl -s https://storage.googleapis.com/git-repo-downloads/repo.asc | gpg --verify - ${REPO} && install -m 755 ${REPO} ~/bin/repo
    
  2. এই কমান্ডগুলি একটি টেম্প ফাইল সেট আপ করে, এটিতে রেপো ডাউনলোড করে এবং প্রদত্ত কীটি প্রয়োজনীয় কীটির সাথে মেলে তা যাচাই করে। যদি সেগুলি সফল হয়, ইনস্টলেশনটি এগিয়ে যায়।

    ইনস্টলেশনের পরে, যাচাই করুন যে repo version একটি নিয়মিত ডিরেক্টরিতে চলাকালীন নিম্নলিখিতগুলির মতো কিছু রিপোর্ট করে। (একটি নিয়মিত ডিরেক্টরি একটি রেপো ক্লায়েন্টের অংশ নয়; উদাহরণস্বরূপ, এটি আপনার হোম ডিরেক্টরি।)

  3. এই কমান্ডটি চালান:
  4. repo version
  5. এই একটি অনুরূপ একটি রিপোর্ট আশা করুন:
  6. <repo not installed>
    repo launcher version 2.15
    (from /usr/bin/repo)
    
    • repo launcher version নম্বর 2.15 বা উচ্চতর হিসাবে রিপোর্ট করা সঠিক সংস্করণ নম্বর এবং সঠিক ইনস্টলেশন নির্দেশ করে।
    • (from /usr/bin/repo) একটি প্যাকেজ থেকে ইনস্টলেশন নির্দেশ করে।
    • (from /home/<>/bin/repo) ম্যানুয়াল ইনস্টলেশন নির্দেশ করে।

ইনস্টলেশন সম্পূর্ণ করা হচ্ছে

পরবর্তী: আপনার সম্পূর্ণ রেপো টুল ইনস্টলেশন সম্পূর্ণ করতে, ডাউনলোডিং দ্য সোর্স পৃষ্ঠায় একটি রেপো ক্লায়েন্ট শুরু করা দেখুন।