summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--modules/git/tree_entry.go2
-rw-r--r--routers/repo/view.go28
-rw-r--r--templates/repo/view_list.tmpl8
3 files changed, 17 insertions, 21 deletions
diff --git a/modules/git/tree_entry.go b/modules/git/tree_entry.go
index f65f332666..e403e93e33 100644
--- a/modules/git/tree_entry.go
+++ b/modules/git/tree_entry.go
@@ -84,7 +84,7 @@ type Entries []*TreeEntry
var sorter = []func(t1, t2 *TreeEntry) bool{
func(t1, t2 *TreeEntry) bool {
- return t1.IsDir() && !t2.IsDir()
+ return (t1.IsDir() || t1.IsSubModule()) && !t2.IsDir() && !t2.IsSubModule()
},
func(t1, t2 *TreeEntry) bool {
return t1.name < t2.name
diff --git a/routers/repo/view.go b/routers/repo/view.go
index 41fdaba08c..77f17e7ae0 100644
--- a/routers/repo/view.go
+++ b/routers/repo/view.go
@@ -10,7 +10,6 @@ import (
"path"
"path/filepath"
"strings"
- "time"
"github.com/gogits/gogs/modules/base"
"github.com/gogits/gogs/modules/git"
@@ -23,12 +22,10 @@ const (
)
type fakeCommit struct {
- Id string
- Summary string
- Url string
- Committer struct {
- When time.Time
- }
+ *git.Commit
+
+ RefUrl string
+ RefId string
}
func Home(ctx *middleware.Context) {
@@ -151,13 +148,16 @@ func Home(ctx *middleware.Context) {
return
}
- commit := git.Commit{
- Tree: *tree,
- Id: te.Id,
- Committer: &git.Signature{
- When: time.Now(),
- },
- CommitMessage: sm.Url,
+ c, err := ctx.Repo.Commit.GetCommitOfRelPath(filepath.Join(treePath, te.Name()))
+ if err != nil {
+ ctx.Handle(404, "GetCommitOfRelPath", err)
+ return
+ }
+
+ commit := fakeCommit{
+ Commit: c,
+ RefUrl: strings.TrimRight(sm.Url, ".git"),
+ RefId: te.Id.String(),
}
files = append(files, []interface{}{te, &commit})
diff --git a/templates/repo/view_list.tmpl b/templates/repo/view_list.tmpl
index e8628306c9..41f7daf28d 100644
--- a/templates/repo/view_list.tmpl
+++ b/templates/repo/view_list.tmpl
@@ -32,12 +32,8 @@
<span class="octicon octicon-file-submodule"></span>
</td>
<td class="name">
- <a href="{{$commit.CommitMessage}}" class="text-truncate">{{$entry.Name}}</a> @ <a href="{{$commit.CommitMessage}}/commit/{{$commit.Id}}">{{ShortSha $commit.Id.String}}</a>
+ <a href="{{$commit.RefUrl}}" class="text-truncate">{{$entry.Name}}</a> @ <a href="{{$commit.RefUrl}}/commit/{{$commit.RefId}}">{{ShortSha $commit.RefId}}</a>
</td>
- <td class="msg">
- <a class="text-truncate" href="{{$commit.CommitMessage}}/commit/{{$commit.Id}}" rel="nofollow">{{$commit.Summary}}</a>
- </td>
- <td class="age">{{TimeSince $commit.Committer.When $.i18n.Lang}}</td>
{{else}}
<td class="icon">
<span class="octicon octicon-file-{{if or $entry.IsDir}}directory{{else}}text{{end}}"></span>
@@ -45,11 +41,11 @@
<td class="name">
<a href="{{$.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>
<td class="age">{{TimeSince $commit.Committer.When $.i18n.Lang}}</td>
- {{end}}
</tr>
{{end}}
</tbody>