diff --git a/routers/repo/commit.go b/routers/repo/commit.go
index 1174e6266188..82be6881fa37 100644
--- a/routers/repo/commit.go
+++ b/routers/repo/commit.go
@@ -5,12 +5,14 @@
 package repo
 
 import (
+	"container/list"
 	"path"
 
 	"github.com/Unknwon/com"
 
 	"github.com/gogits/gogs/models"
 	"github.com/gogits/gogs/modules/base"
+	"github.com/gogits/gogs/modules/git"
 	"github.com/gogits/gogs/modules/middleware"
 	"github.com/gogits/gogs/modules/setting"
 )
@@ -72,6 +74,7 @@ func Commits(ctx *middleware.Context) {
 		ctx.Handle(500, "CommitsByRange", err)
 		return
 	}
+	commits = RenderIssueLinks(commits, ctx.Repo.RepoLink)
 	commits = models.ValidateCommitsWithEmails(commits)
 
 	ctx.Data["Commits"] = commits
@@ -83,6 +86,16 @@ func Commits(ctx *middleware.Context) {
 	ctx.HTML(200, COMMITS)
 }
 
+func RenderIssueLinks(oldCommits *list.List, repoLink string) *list.List {
+	newCommits := list.New()
+	for e := oldCommits.Front(); e != nil; e = e.Next() {
+		c := e.Value.(*git.Commit)
+		c.CommitMessage = string(base.RenderissueIndexPattern([]byte(c.CommitMessage), repoLink))
+		newCommits.PushBack(c)
+	}
+	return newCommits
+}
+
 func SearchCommits(ctx *middleware.Context) {
 	ctx.Data["IsSearchPage"] = true
 	ctx.Data["IsRepoToolbarCommits"] = true
@@ -110,6 +123,7 @@ func SearchCommits(ctx *middleware.Context) {
 		ctx.Handle(500, "SearchCommits", err)
 		return
 	}
+	commits = RenderIssueLinks(commits, ctx.Repo.RepoLink)
 	commits = models.ValidateCommitsWithEmails(commits)
 
 	ctx.Data["Keyword"] = keyword
@@ -171,6 +185,7 @@ func FileHistory(ctx *middleware.Context) {
 		ctx.Handle(500, "repo.FileHistory(CommitsByRange)", err)
 		return
 	}
+	commits = RenderIssueLinks(commits, ctx.Repo.RepoLink)
 	commits = models.ValidateCommitsWithEmails(commits)
 
 	ctx.Data["Commits"] = commits
@@ -191,7 +206,7 @@ func Diff(ctx *middleware.Context) {
 	commitId := ctx.Repo.CommitId
 
 	commit := ctx.Repo.Commit
-
+	commit.CommitMessage = string(base.RenderissueIndexPattern([]byte(commit.CommitMessage), ctx.Repo.RepoLink))
 	diff, err := models.GetDiffCommit(models.RepoPath(userName, repoName),
 		commitId, setting.MaxGitDiffLines)
 	if err != nil {
diff --git a/routers/repo/view.go b/routers/repo/view.go
index 162279acd1b0..073eb5d74ebf 100644
--- a/routers/repo/view.go
+++ b/routers/repo/view.go
@@ -199,6 +199,7 @@ func Home(ctx *middleware.Context) {
 		}
 
 		lastCommit := ctx.Repo.Commit
+		lastCommit.CommitMessage = string(base.RenderissueIndexPattern([]byte(lastCommit.CommitMessage), ctx.Repo.RepoLink))
 		if len(treePath) > 0 {
 			c, err := ctx.Repo.Commit.GetCommitOfRelPath(treePath)
 			if err != nil {
diff --git a/templates/repo/commits_table.tmpl b/templates/repo/commits_table.tmpl
index eb819e387fb4..bd3777b46e52 100644
--- a/templates/repo/commits_table.tmpl
+++ b/templates/repo/commits_table.tmpl
@@ -32,7 +32,7 @@
                     {{end}}
                 </td>
                 <td class="sha"><a rel="nofollow" class="label label-green" href="{{AppSubUrl}}/{{$username}}/{{$reponame}}/commit/{{.Id}} ">{{SubStr .Id.String 0 10}} </a></td>
-                <td class="message"><span class="text-truncate">{{.Summary}}</span></td>
+                <td class="message"><span class="text-truncate">{{Str2html .Summary}}</span></td>
                 <td class="date">{{TimeSince .Author.When $.Lang}}</td>
             </tr>
             {{end}}
diff --git a/templates/repo/diff.tmpl b/templates/repo/diff.tmpl
index 61164c0de0c6..2726b94d9d38 100644
--- a/templates/repo/diff.tmpl
+++ b/templates/repo/diff.tmpl
@@ -17,7 +17,7 @@
         <div class="panel panel-info panel-radius diff-head-box">
             <div class="panel-header">
                 <a class="pull-right btn btn-blue btn-header btn-medium btn-radius" rel="nofollow" href="{{.SourcePath}}">{{.i18n.Tr "repo.diff.browse_source"}}</a>
-                <h4 class="commit-message">{{.Commit.Message}}</h4>
+                <h4 class="commit-message">{{Str2html .Commit.Message}}</h4>
             </div>
             <div class="panel-body">
                 <span class="pull-right">
diff --git a/templates/repo/view_list.tmpl b/templates/repo/view_list.tmpl
index d516eac94cb5..8160c17b8369 100644
--- a/templates/repo/view_list.tmpl
+++ b/templates/repo/view_list.tmpl
@@ -14,7 +14,7 @@
             </span>
             <span class="last-commit"><a href="{{.RepoLink}}/commit/{{.LastCommit.Id}}" rel="nofollow">
                 <strong>{{ShortSha .LastCommit.Id.String}}</strong></a>
-                <span class="text-truncate">{{.LastCommit.Summary}}</span>
+                <span class="text-truncate">{{Str2html .LastCommit.Summary}}</span>
             </span>
             <span class="age right">{{TimeSince .LastCommit.Author.When $.Lang}}</span>
         </th>
@@ -25,6 +25,7 @@
         <tr class="has-parent">
             <td class="icon"></td>
             <td class="name"><a href="{{EscapePound .BranchLink}}{{.ParentPath}}">..</a></td>
+            <th class="sha">SHA1</th>
             <td class="msg"></td>
             <td class="age"></td>
         </tr>
@@ -48,8 +49,11 @@
                     <a href="{{EscapePound $.BranchLink}}/{{$.TreePath}}{{$entry.Name}}" class="text-truncate">{{$entry.Name}}</a>
                 </td>
                 {{end}}
-                <td class="msg">
-                    <a class="text-truncate" href="{{AppSubUrl}}/{{$.Username}}/{{$.Reponame}}/commit/{{$commit.Id}}" rel="nofollow">{{$commit.Summary}}</a>
+                <td class="sha">
+                  <a rel="nofollow" class="label label-green" href="{{AppSubUrl}}/{{$.Username}}/{{$.Reponame}}/commit/{{$commit.Id}} ">{{SubStr $commit.Id.String 0 10}} </a>
+                </td>
+                <td class="message">
+                  <span class="text-truncate">{{Str2html $commit.Summary}}</span>
                 </td>
                 <td class="age">{{TimeSince $commit.Committer.When $.Lang}}</td>
             </tr>