Browse Source

Properly handle and return empty string for dangling commits in GetBranchName (#11587)

tags/v1.13.0-rc1
Cirno the Strongest GitHub 5 years ago
parent
commit
47be1264ee
4 changed files with 11 additions and 3 deletions
  1. +1
    -1
      models/issue_comment.go
  2. +6
    -1
      modules/git/commit.go
  3. +1
    -0
      routers/repo/commit.go
  4. +3
    -1
      templates/repo/commit_page.tmpl

+ 1
- 1
models/issue_comment.go View File

@@ -1129,7 +1129,7 @@ func getCommitIDsFromRepo(repo *Repository, oldCommitID, newCommitID, baseBranch
return nil, false, err return nil, false, err
} }


if oldCommitBranch == "undefined" {
if oldCommitBranch == "" {
commitIDs = make([]string, 2) commitIDs = make([]string, 2)
commitIDs[0] = oldCommitID commitIDs[0] = oldCommitID
commitIDs[1] = newCommitID commitIDs[1] = newCommitID


+ 6
- 1
modules/git/commit.go View File

@@ -468,8 +468,13 @@ func (c *Commit) GetSubModule(entryname string) (*SubModule, error) {


// GetBranchName gets the closes branch name (as returned by 'git name-rev --name-only') // GetBranchName gets the closes branch name (as returned by 'git name-rev --name-only')
func (c *Commit) GetBranchName() (string, error) { func (c *Commit) GetBranchName() (string, error) {
data, err := NewCommand("name-rev", "--name-only", c.ID.String()).RunInDir(c.repo.Path)
data, err := NewCommand("name-rev", "--name-only", "--no-undefined", c.ID.String()).RunInDir(c.repo.Path)
if err != nil { if err != nil {
// handle special case where git can not describe commit
if strings.Contains(err.Error(), "cannot describe") {
return "", nil
}

return "", err return "", err
} }




+ 1
- 0
routers/repo/commit.go View File

@@ -309,6 +309,7 @@ func Diff(ctx *context.Context) {
ctx.Data["BranchName"], err = commit.GetBranchName() ctx.Data["BranchName"], err = commit.GetBranchName()
if err != nil { if err != nil {
ctx.ServerError("commit.GetBranchName", err) ctx.ServerError("commit.GetBranchName", err)
return
} }
ctx.HTML(200, tplCommitPage) ctx.HTML(200, tplCommitPage)
} }


+ 3
- 1
templates/repo/commit_page.tmpl View File

@@ -27,7 +27,9 @@
{{if IsMultilineCommitMessage .Commit.Message}} {{if IsMultilineCommitMessage .Commit.Message}}
<pre class="commit-body">{{RenderCommitBody .Commit.Message $.RepoLink $.Repository.ComposeMetas}}</pre> <pre class="commit-body">{{RenderCommitBody .Commit.Message $.RepoLink $.Repository.ComposeMetas}}</pre>
{{end}} {{end}}
<span class="text grey">{{svg "octicon-git-branch" 16}}{{.BranchName}}</span>
{{if .BranchName}}
<span class="text grey">{{svg "octicon-git-branch" 16}}{{.BranchName}}</span>
{{end}}
</div> </div>
<div class="ui attached info segment {{$class}}"> <div class="ui attached info segment {{$class}}">
<div class="ui stackable grid"> <div class="ui stackable grid">


Loading…
Cancel
Save