gitea获取diff更改 dockerfile更改 日志输出至文件
This commit is contained in:
@ -4,6 +4,8 @@ import (
|
||||
"code-review/services/types"
|
||||
"code-review/utils"
|
||||
"fmt"
|
||||
"log"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// GiteeEvent Gitee 平台的 webhook 事件
|
||||
@ -70,6 +72,31 @@ func (e *GiteeEvent) ExtractChanges() (*types.CodeChanges, error) {
|
||||
},
|
||||
}
|
||||
|
||||
// 过滤合并提交
|
||||
validCommits := make([]struct {
|
||||
ID string `json:"id"`
|
||||
Message string `json:"message"`
|
||||
}, 0)
|
||||
|
||||
for _, commit := range e.PullRequest.Commits {
|
||||
if strings.HasPrefix(commit.Message, "Merge remote-tracking branch") ||
|
||||
strings.HasPrefix(commit.Message, "Merge branch") {
|
||||
log.Printf("跳过合并提交: commit=%s", commit.ID)
|
||||
continue
|
||||
}
|
||||
validCommits = append(validCommits, commit)
|
||||
}
|
||||
|
||||
if len(validCommits) == 0 {
|
||||
log.Printf("没有有效的提交记录(所有提交都是合并提交),跳过代码审查")
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
// 更新最后的提交ID
|
||||
if len(validCommits) > 0 {
|
||||
changes.CommitID = validCommits[len(validCommits)-1].ID
|
||||
}
|
||||
|
||||
for _, change := range e.PullRequest.Changes {
|
||||
fileChange := types.FileChange{
|
||||
Path: change.Path,
|
||||
|
Reference in New Issue
Block a user