אתם יכולים לשנות את ההתנהגות של Gemini Code Assist ב-GitHub במאגרים ספציפיים על ידי הוספת קובץ config.yaml לתיקייה .gemini/ שנמצאת בבסיס המאגר. קובץ config.yaml מכיל תכונות שונות שאפשר להגדיר, להפעיל או להשבית. אתם יכולים להגדיר קבוצות בכמה מאגרים כדי לשנות חלק מההתנהגויות של Gemini Code Assist ב-GitHub.
בנוסף, Gemini Code Assist תומך בהוספה של קובץ styleguide.md לתיקייה .gemini/, שכולל הוראות ל-Gemini Code Assist עם כמה כללים ספציפיים שאתם רוצים שהוא יפעל לפיהם כשמבצעים סקירת קוד.
מידע נוסף על מדריכי סגנון ל-Gemini Code Assist זמין במאמר מדריך סגנון לבדיקת קוד.
שדות להגדרת התצורה
בקטע הזה מוסבר על שיקולים לגבי שדות ספציפיים שאפשר להתאים אישית ב-Gemini Code Assist ב-GitHub. רשימה מלאה של השדות זמינה 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: בשדה הזה נעשה שימוש בתבניות glob. במהלך האינטראקציה עם המאגר, 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: []
ניהול תצורות בכמה מאגרים
אפשר לנהל כמה היבטים של Gemini Code Assist ב-GitHub בכמה מאגרים:
אם יש לכם את הגרסה לצרכנים, אתם יכולים להחליף את המצב של הגדרות מסוימות לכל המאגרים שמשויכים לחשבון.
אם יש לכם את גרסת Enterprise, אתם יכולים להחליף בין מצבי הפעלה של הגדרות מסוימות למאגרי מידע מרובים שמקובצים לפי חיבור Developer Connect. במקרה כזה, תוכלו לנהל את ההגדרות המשותפות שלהם דרך מסוף Google Cloud.
אם מאגר מנוהל כחלק מקבוצה אבל יש לו גם config.yaml משלו, ההגדרות של config.yaml במאגר מבטלות את ההגדרות של הקבוצה.
כדי לראות איך הגדרה ספציפית פועלת ואילו חריגים קיימים, אפשר לעיין בסכימה של config.yaml.
בשלבים הבאים מוסבר איך לשלוט בקבוצת הגדרות אחת בכמה מאגרים. אנחנו יוצאים מנקודת הנחה שכבר הגדרתם את Gemini Code Assist ב-GitHub.
צרכנות
ב-Gemini Code Assist, עוברים לדף ההגדרות.
אם תתבקשו לעשות זאת, לחצו על Log in with GitHub (כניסה באמצעות GitHub) ופועלים לפי ההנחיות כדי להיכנס ל-GitHub מתוך Gemini Code Assist.
בדף Gemini, בוחרים את החשבון שרוצים לעבוד איתו, מעיינים בתנאים ובהגבלות ולוחצים על המשך.
בדף Free agent, מעדכנים את ההגדרות לפי הצורך.
לוחצים על שמירה.
Enterprise
במסוף Google Cloud, עוברים לדף Agents & Tools של Gemini Code Assist.
בקטע סוכנים, מאתרים את הכרטיס ניהול קוד מקור של Code Assist ולוחצים על מתקדם.
החלונית עריכת ניהול קוד מקור של Code Assist נפתחת.
בטבלה Connections, לוחצים על שם החיבור שרוצים להחיל עליו הגדרה.
ייפתח דף הפרטים של החיבור.
בכרטיסייה הגדרות, מעדכנים את ההגדרות שרוצים לשנות.
לוחצים על שמירה.
המאמרים הבאים
- איך מוסיפים מדריך סגנון ל-Gemini Code Assist ב-GitHub