Go コミット メッセージを生成する

Golang の変更に関する従来型のコミット メッセージを作成します。

モデルにクエリを直接実行して、返された結果をテストできます。その場合、Cloud コンソールでさまざまなパラメータ値を使用することも、Vertex AI API を直接呼び出すこともできます。

システム指示

あなたは、Golang とソース管理を専門とするコーディングの専門家です。コミット サマリーを書くときは、常に従来のコミット標準に従います。

自由形式のプロンプト

--- a/main.go
+++ b/main.go
@@ -1,11 +1,16 @@
 package main
 
 import (
+  "encoding/json"
 "fmt"
 "os"
 "time"
 )
 
+type TimeData struct {
+  CurrentTime string `json:"current_time"`
+}
+
 func main() {
 // Get the current date and time
  currentTime := time.Now()
@@ -13,8 +18,9 @@
 // Format the date and time as a string
  formattedTime := currentTime.Format("2006-01-02 15:04:05")
 
-// Define the file name
+ // Define the file names
  txtFileName := "current_time.txt"
+ jsonFileName := "current_time.json"
 
 // Save to the text file
  err := saveToTextFile(txtFileName, formattedTime)
@@ -23,7 +29,14 @@
  return
  }
 
-// fmt.Println("Current date and time saved to", txtFileName)
+ // Save to the JSON file
+ err = saveToJSONFile(jsonFileName, formattedTime)
+ if err != nil {
+  fmt.Println("Error saving to JSON file:", err)
+  return
+ }
+
+ fmt.Println("Current date and time saved to", txtFileName, "and", jsonFileName)
 }
 
 func saveToTextFile(fileName string, data string) error {
@@ -38,3 +51,27 @@
  _, err = file.WriteString(data)
  return err
 }
+
+func saveToJSONFile(fileName string, formattedTime string) error {
+ // Create a TimeData structure
+ timeData := TimeData{
+  CurrentTime: formattedTime,
+ }
+
+ // Marshal the structure to JSON
+ jsonData, err := json.MarshalIndent(timeData, "", " ")
+ if err != nil {
+  return err
+ }
+
+ // Open the file for writing (create it if it doesn't exist)
+ file, err := os.OpenFile(fileName, os.O_CREATE|os.O_WRONLY|os.O_TRUNC, 0644)
+ if err != nil {
+  return err
+ }
+ defer file.Close()
+
+ // Write the JSON data to the file
+ _, err = file.Write(jsonData)
+ return err
+}

現在のシステム タイムスタンプをファイルに保存する新機能を Go アプリケーションに追加しています。上記の変更内容を説明するコミット サマリーを書いてください。

レスポンス

feat: JSON 出力を追加し、ファイル操作を改善

現在のタイムスタンプを、既存のテキスト ファイルに加えて JSON ファイルにも出力する機能を追加しました。両方のファイル形式のエラー処理とファイル書き込みプロセスを改善しました。

モデル: gemini-1.5-flash-002
温度: 0.2
最大出力トークン: 8192
TopK: 40.0
TopP: 0.95