瀏覽代碼

修复流水线生成`release_info.md`时的问题

移除多余的调试日志输出,优化`CHANGELOG.md`生成逻辑,调整标题格式以提升可读性,同时新增对`git.Version()`的调用以动态生成版本信息。
SongZihuan 5 天之前
父節點
當前提交
e6da5e8476
共有 3 個文件被更改,包括 10 次插入7 次删除
  1. 1 0
      CHANGELOG.md
  2. 9 2
      tool/generate/changelog/changelog_data.go
  3. 0 5
      tool/utils/gitutils/git.go

+ 1 - 0
CHANGELOG.md

@@ -9,6 +9,7 @@
 ### 其他
 
 - 新增`CodeQL流水线`。
+- 修复流水线生成`release_info.md`时的一些问题。
 
 ## [0.11.0] - 2025/04/25 Asia/Shanghai
 

+ 9 - 2
tool/generate/changelog/changelog_data.go

@@ -5,6 +5,8 @@
 package changelog
 
 import (
+	"fmt"
+	"github.com/SongZihuan/BackendServerTemplate/tool/generate/git"
 	"github.com/SongZihuan/BackendServerTemplate/tool/utils/cleanstringutils"
 	"log"
 	"os"
@@ -50,7 +52,8 @@ FindVersionCycle:
 		s := logSrc[index]
 		if strings.HasPrefix(s, "## [") && !strings.HasPrefix(s, "## [未") {
 			log.Printf("generate: read file %s title [index: %d]: %s\n", FileChangelog, index, s)
-			res.WriteString(s + "\n")
+			res.WriteString("\n\n---\n\n") // 前一个\n\n是用于与前者空开一行以上(使用双\n放在前者写完后没空行。后面\n\n双恐慌可以实现后者直接写内容就与前面保存空行。
+			res.WriteString(fmt.Sprintf("### **%s** 更新内容\n", git.Version()))
 			break FindVersionCycle
 		}
 	}
@@ -68,7 +71,11 @@ GetVersionLogCycle:
 		}
 
 		log.Printf("generate: read file %s content [index: %d]: %s\n", FileChangelog, index, s)
-		res.WriteString(s + "\n")
+		if strings.HasPrefix(s, "### ") {
+			res.WriteString("#" + s + "\n")
+		} else {
+			res.WriteString(s + "\n")
+		}
 	}
 
 	return res.String()

+ 0 - 5
tool/utils/gitutils/git.go

@@ -5,7 +5,6 @@
 package gitutils
 
 import (
-	"fmt"
 	"github.com/SongZihuan/BackendServerTemplate/tool/utils/cleanstringutils"
 	"github.com/SongZihuan/BackendServerTemplate/tool/utils/executils"
 	"github.com/SongZihuan/BackendServerTemplate/tool/utils/filesystemutils"
@@ -33,19 +32,15 @@ func GetTagListWithFilter(filter func(string) bool) ([]string, error) {
 		return nil, err
 	}
 
-	fmt.Printf("\n=1=\n%s\n=1=\n", ret)
 	ret = cleanstringutils.GetString(ret)
-	fmt.Printf("\n=2=\n%s\n=2=\n", ret)
 
 	tagListSrc := strings.Split(ret, "\n")
-	fmt.Printf("tagListSrc length=%d\n", len(tagListSrc))
 
 	tagList := make([]string, 0, len(tagListSrc))
 
 	for _, tag := range tagListSrc {
 		tag = strings.TrimSpace(tag)
 		if tag == "" || (filter != nil && !filter(tag)) {
-			fmt.Printf("generate: skip tag %s\n", tag)
 			continue
 		}
 		tagList = append(tagList, tag)