@@ -15,37 +15,37 @@ import (
1515
1616type RefCommit struct {
1717 InputRef string
18- Ref git.RefName
18+ RefName git.RefName
1919 Commit * git.Commit
2020 CommitID string
2121}
2222
2323// ResolveRefCommit resolve ref to a commit if exist
24- func ResolveRefCommit (ctx reqctx.RequestContext , repo * repo_model.Repository , inputRef string ) (_ * RefCommit , err error ) {
24+ func ResolveRefCommit (ctx reqctx.RequestContext , repo * repo_model.Repository , inputRef string , minCommitIDLen ... int ) (_ * RefCommit , err error ) {
2525 gitRepo , err := gitrepo .RepositoryFromRequestContextOrOpen (ctx , repo )
2626 if err != nil {
2727 return nil , err
2828 }
2929 refCommit := RefCommit {InputRef : inputRef }
3030 if gitrepo .IsBranchExist (ctx , repo , inputRef ) {
31- refCommit .Ref = git .RefNameFromBranch (inputRef )
31+ refCommit .RefName = git .RefNameFromBranch (inputRef )
3232 } else if gitrepo .IsTagExist (ctx , repo , inputRef ) {
33- refCommit .Ref = git .RefNameFromTag (inputRef )
34- } else if len ( inputRef ) == git .ObjectFormatFromName (repo .ObjectFormatName ). FullLength ( ) {
35- refCommit .Ref = git .RefNameFromCommit (inputRef )
33+ refCommit .RefName = git .RefNameFromTag (inputRef )
34+ } else if git . IsStringLikelyCommitID ( git .ObjectFormatFromName (repo .ObjectFormatName ), inputRef , minCommitIDLen ... ) {
35+ refCommit .RefName = git .RefNameFromCommit (inputRef )
3636 }
37- if refCommit .Ref == "" {
37+ if refCommit .RefName == "" {
3838 return nil , git.ErrNotExist {ID : inputRef }
3939 }
40- if refCommit .Commit , err = gitRepo .GetCommit (refCommit .Ref .String ()); err != nil {
40+ if refCommit .Commit , err = gitRepo .GetCommit (refCommit .RefName .String ()); err != nil {
4141 return nil , err
4242 }
4343 refCommit .CommitID = refCommit .Commit .ID .String ()
4444 return & refCommit , nil
4545}
4646
4747func NewRefCommit (refName git.RefName , commit * git.Commit ) * RefCommit {
48- return & RefCommit {InputRef : refName .ShortName (), Ref : refName , Commit : commit , CommitID : commit .ID .String ()}
48+ return & RefCommit {InputRef : refName .ShortName (), RefName : refName , Commit : commit , CommitID : commit .ID .String ()}
4949}
5050
5151// GetGitRefs return git references based on filter
0 commit comments