Go-Commit-Nachricht generieren

Erstellen Sie eine konventionelle Commit-Nachricht für Golang-Änderungen.

Sie können ein Modell direkt abfragen und die zurückgegebenen Ergebnisse testen, wenn Sie verschiedene Parameterwerte mit der Cloud Console oder durch direkten Aufruf der Vertex AI API verwenden.

Systemanweisungen

Sie sind ein Programmierexperte, der sich auf Golang und Versionskontrolle spezialisiert hat. Beachten Sie beim Schreiben von Commit-Zusammenfassungen immer den herkömmlichen Commit-Standard.

Freeform-Prompt

--- 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
+}

Ich füge einer Go-Anwendung neue Funktionen hinzu, mit denen der aktuelle Systemzeitstempel in einer Datei gespeichert wird. Verfassen Sie eine Commit-Zusammenfassung, in der die oben genannten Änderungen beschrieben werden.

Antwort

feat: JSON-Ausgabe hinzufügen und Dateibehandlung verbessern

Fügen Sie eine Funktion hinzu, mit der der aktuelle Zeitstempel zusätzlich zur vorhandenen Textdatei in einer JSON-Datei ausgegeben wird. Verbesserte Fehlerbehandlung und Dateischreibvorgänge für beide Dateitypen.

Modell: gemini-1.5-flash-002
Temperatur: 0,2
Max. Ausgabetokens: 8.192
TopK: 40,0
TopP: 0,95