Menyesuaikan perilaku Gemini Code Assist di GitHub

Anda dapat mengubah perilaku Gemini Code Assist di GitHub untuk setiap repositori dengan menambahkan file config.yaml ke folder .gemini/ yang terletak di root repositori. File config.yaml berisi berbagai fitur yang dapat dikonfigurasi yang dapat Anda aktifkan atau nonaktifkan. Anda dapat melakukan konfigurasi grup di beberapa repositori untuk sebagian perilaku Gemini Code Assist di GitHub.

Gemini Code Assist juga mendukung penambahan file styleguide.md ke folder .gemini/, yang menginstruksikan Gemini Code Assist dengan beberapa aturan khusus yang Anda inginkan untuk diikuti saat melakukan peninjauan kode. Untuk mengetahui informasi selengkapnya tentang panduan gaya untuk Gemini Code Assist, lihat Panduan gaya peninjauan kode.

Kolom konfigurasi

Bagian ini menjelaskan pertimbangan untuk kolom tertentu yang dapat disesuaikan di Gemini Code Assist di GitHub. Untuk mengetahui daftar lengkap kolom, lihat skema config.yaml.

  • code_review: comment_severity_threshold: Kolom ini menetapkan tingkat keparahan minimum untuk komentar yang diposting Gemini Code Assist. Misalnya, jika Anda telah menetapkan code_review: comment_severity_threshold: HIGH, Gemini Code Assist tidak akan memberikan komentar permintaan pull untuk masalah yang dianggap memiliki tingkat keparahan LOW atau MEDIUM, seperti refactoring kecil. Gemini Code Assist menentukan tingkat keparahan a komentar berdasarkan jenis dan signifikansi masalah yang dipertimbangkan, dengan pelanggaran panduan gaya kustom Anda yang biasanya memenuhi atau melampaui nilai minimum keparahan.

  • ignore_patterns: Kolom ini menggunakan pola glob. Saat berinteraksi dengan repositori, Gemini Code Assist mengabaikan file yang cocok dengan pola apa pun dalam daftar ini.

  • memory_config: Kolom ini berlaku jika Anda sebelumnya telah mengaktifkan kualitas respons yang ditingkatkan untuk beberapa repositori. Saat mengaktifkan kualitas respons yang ditingkatkan untuk beberapa repositori, Anda dapat menetapkan memory_config: disabled: true untuk repositori tertentu dalam pengelompokan, yang akan menonaktifkan fitur untuk repositori tersebut.

Skema config.yaml

Cuplikan kode berikut adalah skema untuk file config.yaml. Skema ini menentukan semua opsi konfigurasi yang memungkinkan dan nilai yang diterima:

$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.

Contoh config.yaml

Cuplikan kode berikut adalah contoh file config.yaml. Dalam contoh ini, setiap properti ditetapkan ke nilai default yang digunakan oleh Gemini Code Assist. Anda dapat menggunakan cuplikan ini sebagai template untuk membuat file config.yaml Anda sendiri:

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: []

Mengelola konfigurasi di beberapa repositori

Beberapa aspek Gemini Code Assist di GitHub dapat dikelola di beberapa repositori:

  • Jika memiliki versi konsumen, Anda dapat mengaktifkan atau menonaktifkan setelan tertentu untuk semua repositori yang terkait dengan akun.

  • Jika memiliki versi enterprise, Anda dapat mengaktifkan atau menonaktifkan setelan tertentu untuk beberapa repositori yang dikelompokkan berdasarkan koneksi Developer Connect. Jika melakukannya, Anda akan mengelola setelan kolektifnya melalui konsol Google Cloud.

Jika repositori dikelola sebagai bagian dari grup, tetapi juga memiliki config.yaml sendiri, setelan config.yaml repositori akan mengganti setelan grup.

Untuk mengetahui perilaku dan pengecualian setelan tertentu, tinjau skema config.yaml.

Langkah-langkah berikut menunjukkan cara mengontrol satu set konfigurasi di beberapa repositori. Langkah-langkah ini mengasumsikan bahwa Anda telah menyiapkan Gemini Code Assist di GitHub sebelumnya .

Konsumen

  1. Di Gemini Code Assist, buka halaman setelan.

    Buka setelan

  2. Jika diminta, klik Log in with GitHub dan ikuti perintah untuk login ke GitHub dari dalam Gemini Code Assist.

  3. Di halaman Gemini, pilih akun yang ingin Anda gunakan, tinjau persyaratan layanan, lalu klik Continue.

  4. Di halaman Free agent, perbarui setelan sesuai kebutuhan.

  5. Klik Save.

Enterprise

  1. Di konsol Google Cloud, buka halaman Agents &Tools Gemini Code Assist.

    Buka Agen &Alat

  2. Di bagian Agents, temukan kartu Code Assist Source Code Management, lalu klik Advanced.

    Panel Edit Code Assist Source Code Management akan terbuka.

  3. Di tabel Connections, klik nama koneksi yang ingin Anda terapkan konfigurasi.

    Halaman detail untuk koneksi akan terbuka.

  4. Di tab Settings, perbarui setelan yang ingin Anda ubah.

  5. Klik Save.

Langkah berikutnya