Skip "parentsigned" check when the repo is empty (#35292)

Fix #35280
This commit is contained in:
wxiaoguang 2025-08-17 00:24:30 +08:00 committed by GitHub
parent 04017f259b
commit 621f2fcadb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -290,16 +290,22 @@ Loop:
return false, nil, nil, err
}
defer gitRepo.Close()
commit, err := gitRepo.GetCommit(parentCommit)
isEmpty, err := gitRepo.IsEmpty()
if err != nil {
return false, nil, nil, err
}
if commit.Signature == nil {
return false, nil, nil, &ErrWontSign{parentSigned}
}
verification := ParseCommitWithSignature(ctx, commit)
if !verification.Verified {
return false, nil, nil, &ErrWontSign{parentSigned}
if !isEmpty {
commit, err := gitRepo.GetCommit(parentCommit)
if err != nil {
return false, nil, nil, err
}
if commit.Signature == nil {
return false, nil, nil, &ErrWontSign{parentSigned}
}
verification := ParseCommitWithSignature(ctx, commit)
if !verification.Verified {
return false, nil, nil, &ErrWontSign{parentSigned}
}
}
}
}