GitHub-এ জেমিনি কোড অ্যাসিস্ট আচরণ কাস্টমাইজ করুন

আপনি রিপোজিটরির রুটে অবস্থিত .gemini/ ফোল্ডারে একটি config.yaml ফাইল যোগ করে স্বতন্ত্র রিপোজিটরিগুলোর জন্য Gemini Code Assist on GitHub-এর আচরণ পরিবর্তন করতে পারেন। config.yaml ফাইলটিতে বিভিন্ন কনফিগারযোগ্য বৈশিষ্ট্য রয়েছে যা আপনি সক্রিয় বা নিষ্ক্রিয় করতে পারেন। আপনি Gemini Code Assist on GitHub-এর আচরণের একটি উপসেটের জন্য একাধিক রিপোজিটরি জুড়ে গ্রুপ কনফিগারেশন সম্পাদন করতে পারেন।

Gemini Code Assist .gemini/ ফোল্ডারে একটি styleguide.md ফাইল যোগ করাও সমর্থন করে, যা কোড রিভিউ করার সময় Gemini Code Assist-কে অনুসরণ করার জন্য কিছু নির্দিষ্ট নিয়ম নির্দেশ করে। Gemini Code Assist-এর স্টাইল গাইড সম্পর্কে আরও তথ্যের জন্য, কোড রিভিউ স্টাইল গাইড দেখুন।

কনফিগারেশন ক্ষেত্রগুলি

এই বিভাগে GitHub-এ থাকা Gemini Code Assist-এর নির্দিষ্ট কাস্টমাইজযোগ্য ফিল্ডগুলোর জন্য বিবেচ্য বিষয়গুলো বর্ণনা করা হয়েছে। ফিল্ডগুলোর সম্পূর্ণ তালিকার জন্য, config.yaml স্কিমাটি দেখুন।

  • code_review: comment_severity_threshold : এই ফিল্ডটি সর্বনিম্ন তীব্রতা নির্ধারণ করে, যার জন্য Gemini Code Assist কমেন্ট পোস্ট করে। উদাহরণস্বরূপ, যদি আপনি code_review: comment_severity_threshold: HIGH সেট করে থাকেন, তাহলে Gemini Code Assist সেইসব ইস্যুর জন্য পুল রিকোয়েস্ট কমেন্ট দেবে না যেগুলোকে এটি LOW বা MEDIUM তীব্রতার বলে মনে করে, যেমন ছোটখাটো রিফ্যাক্টরিং। Gemini Code Assist বিবেচ্য ইস্যুর ধরন এবং গুরুত্বের উপর ভিত্তি করে একটি কমেন্টের তীব্রতা নির্ধারণ করে, যেখানে আপনার কাস্টম স্টাইল গাইডের লঙ্ঘনগুলো সাধারণত তীব্রতার থ্রেশহোল্ড পূরণ করে বা অতিক্রম করে।

  • ignore_patterns : এই ফিল্ডটি গ্লোব প্যাটার্ন ব্যবহার করে। রিপোজিটরির সাথে ইন্টারঅ্যাক্ট করার সময়, Gemini Code Assist এই তালিকার কোনো প্যাটার্নের সাথে মিলে যাওয়া ফাইলগুলিকে উপেক্ষা করে।

  • memory_config : এই ফিল্ডটি তখনই প্রযোজ্য হবে, যদি আপনি আগে একাধিক রিপোজিটরির জন্য উন্নত রেসপন্স কোয়ালিটি এনাবল করে থাকেন। যখন আপনি একাধিক রিপোজিটরির জন্য উন্নত রেসপন্স কোয়ালিটি এনাবল করেন, তখন আপনি গ্রুপিংয়ের মধ্যে থাকা একটি নির্দিষ্ট রিপোজিটরির জন্য memory_config: disabled: true সেট করতে পারেন, যা সেই রিপোজিটরির জন্য ফিচারটি ডিজেবল করে দেয়।

config.yaml স্কিমা

নিম্নলিখিত কোড স্নিপেটটি হলো config.yaml ফাইলের স্কিমা। এটি সমস্ত সম্ভাব্য কনফিগারেশন অপশন এবং তাদের গৃহীত মানগুলিকে সংজ্ঞায়িত করে:

$schema: "http://json-schema.org/draft-07/schema#"
title: RepoConfig
description: Configuration for Gemini Code Assist on a repository. All fields are optional and have default values.
type: object
properties:
  have_fun:
    type: boolean
    description: Enables fun features such as a poem in the initial pull request summary. Default: false.
  ignore_patterns:
    type: array
    items:
      type: string
    description: A list of glob patterns for files and directories that Gemini Code Assist should ignore. Default: [].
  memory_config:
    type: object
    description: Configuration for persistent memory, which is used to improve responses.
    properties:
      disabled:
        type: boolean
        description: Whether to disable persistent memory for this specific repository. Default: false.
  code_review:
    type: object
    description: Configuration for code reviews. All fields are optional and have default values.
    properties:
      disable:
        type: boolean
        description: Disables Gemini from acting on pull requests. Default: false.
      comment_severity_threshold:
        type: string
        enum:
          - LOW
          - MEDIUM
          - HIGH
          - CRITICAL
        description: The minimum severity of review comments to consider. Default: MEDIUM.
      max_review_comments:
        type: integer
        format: int64
        description: The maximum number of review comments to consider. Use -1 for unlimited. Default: -1.
      pull_request_opened:
        type: object
        description: Configuration for pull request opened events. All fields are optional and have default values.
        properties:
          help:
            type: boolean
            description: Posts a help message on pull request open. Default: false.
          summary:
            type: boolean
            description: Posts a pull request summary on the pull request open. Default: true.
          code_review:
            type: boolean
            description: Posts a code review on pull request open. Default: true.
          include_drafts:
            type: boolean
            description: Enables agent functionality on draft pull requests. Default: true.

config.yaml উদাহরণ

নিম্নলিখিত কোড স্নিপেটটি একটি config.yaml ফাইলের উদাহরণ। এই উদাহরণে, প্রতিটি প্রপার্টি Gemini Code Assist দ্বারা ব্যবহৃত ডিফল্ট মানে সেট করা হয়েছে। আপনি আপনার নিজের config.yaml ফাইল তৈরি করতে এই স্নিপেটটিকে একটি টেমপ্লেট হিসাবে ব্যবহার করতে পারেন:

have_fun: false
memory_config:
  disabled: false
code_review:
  disable: false
  comment_severity_threshold: MEDIUM
  max_review_comments: -1
  pull_request_opened:
    help: false
    summary: true
    code_review: true
    include_drafts: true
ignore_patterns: []

একাধিক রিপোজিটরি জুড়ে কনফিগারেশন পরিচালনা করুন

গিটহাবে থাকা জেমিনি কোড অ্যাসিস্টের কিছু দিক একাধিক রিপোজিটরি জুড়ে পরিচালনা করা যায়:

  • আপনার কাছে কনজিউমার ভার্সন থাকলে, আপনি একটি অ্যাকাউন্টের সাথে যুক্ত সমস্ত রিপোজিটরির নির্দিষ্ট কিছু সেটিংস টগল করতে পারবেন।

  • আপনার কাছে এন্টারপ্রাইজ সংস্করণ থাকলে, আপনি একটি ডেভেলপার কানেক্ট সংযোগের মাধ্যমে গ্রুপ করা একাধিক রিপোজিটরির জন্য নির্দিষ্ট কিছু সেটিংস টগল করতে পারেন। যখন আপনি এটি করেন, তখন আপনি গুগল ক্লাউড কনসোলের মাধ্যমে তাদের সম্মিলিত সেটিংস পরিচালনা করেন।

যদি কোনো রিপোজিটরি একটি গ্রুপের অংশ হিসেবে পরিচালিত হয় এবং তার নিজস্ব config.yaml থাকে, তাহলে রিপোজিটরির config.yaml সেটিংস গ্রুপের সেটিংসকে ওভাররাইড করবে।

নির্দিষ্ট সেটিংয়ের আচরণ এবং ব্যতিক্রম সম্পর্কে জানতে config.yaml স্কিমাটি পর্যালোচনা করুন

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

ভোক্তা

  1. Gemini Code Assist-এর সেটিংস পৃষ্ঠায় যান।

    সেটিংসে যান

  2. অনুরোধ করা হলে, 'Log in with GitHub'-এ ক্লিক করুন এবং Gemini Code Assist-এর ভেতর থেকে GitHub-এ সাইন ইন করার জন্য নির্দেশাবলী অনুসরণ করুন।

  3. জেমিনি পেজে, আপনি যে অ্যাকাউন্টটি নিয়ে কাজ করতে চান সেটি নির্বাচন করুন, পরিষেবার শর্তাবলী পর্যালোচনা করুন এবং 'চালিয়ে যান' (Continue ) বাটনে ক্লিক করুন।

  4. ফ্রি এজেন্ট পেজে প্রয়োজন অনুযায়ী সেটিংস আপডেট করুন।

  5. সংরক্ষণ করুন- এ ক্লিক করুন।

উদ্যোগ

  1. Google Cloud কনসোলে, Gemini Code Assist Agents & Tools পৃষ্ঠায় যান।

    এজেন্ট ও টুলস-এ যান

  2. এজেন্ট বিভাগে, কোড অ্যাসিস্ট সোর্স কোড ম্যানেজমেন্ট কার্ডটি খুঁজুন এবং অ্যাডভান্সড-এ ক্লিক করুন।

    এডিট কোড অ্যাসিস্ট সোর্স কোড ম্যানেজমেন্ট প্যানেলটি খোলে।

  3. কানেকশন টেবিলে, যে কানেকশনটিতে আপনি কনফিগারেশন প্রয়োগ করতে চান, সেটির নামে ক্লিক করুন।

    সংযোগটির বিস্তারিত পৃষ্ঠাটি খোলে।

  4. সেটিংস ট্যাবে, আপনি যে সেটিংসগুলো পরিবর্তন করতে চান, সেগুলো আপডেট করুন।

  5. সংরক্ষণ করুন- এ ক্লিক করুন।

এরপর কী?