diff --git a/README.md b/README.md index 44c626499..b6dd1ea5f 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,7 @@ The goal of this project is to make the easiest, fastest and most painless way t - Create/migrate/mirror/delete/watch/rename/transfer public/private repository - Repository viewer/release/issue tracker - Repository and Organization level webhooks +- Repository Git hooks - Add/remove repository collaborators - Gravatar and cache support - Mail service(register, issue) diff --git a/README_ZH.md b/README_ZH.md index 9581faf78..a8cefa44f 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -24,14 +24,15 @@ Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自 - 支持 SSH/HTTP(S) 协议 - 支持 SMTP/LDAP/反向代理 用户认证 - 支持反向代理子路径 -- 注册/删除/重命名 用户 -- 创建/管理/删除 组织以及团队管理功能 -- 创建/迁移/镜像/删除/关注/重命名/转移 公开/私有 仓库 -- 仓库 浏览/发布/工单管理 -- 仓库和组织级别 Web 钩子 -- 添加/删除 仓库协作者 -- Gravatar 以及缓存支持 -- 邮件服务(注册、Issue) +- 支持 注册/删除/重命名 用户 +- 支持 创建/管理/删除 组织以及团队管理功能 +- 支持 创建/迁移/镜像/删除/关注/重命名/转移 公开/私有 仓库 +- 支持仓库 浏览/发布/工单管理 +- 支持仓库和组织级别 Web 钩子 +- 支持仓库 Git 钩子 +- 支持 添加/删除 仓库协作者 +- 支持 Gravatar 以及本地缓存 +- 支持邮件服务(注册、Issue) - 管理员面板 - Slack Web 钩子集成 - 支持 MySQL、PostgreSQL 以及 SQLite3 数据库 diff --git a/conf/locale/locale_en-US.ini b/conf/locale/locale_en-US.ini index 7452fb735..e0a506650 100644 --- a/conf/locale/locale_en-US.ini +++ b/conf/locale/locale_en-US.ini @@ -273,6 +273,9 @@ tags = Tags issues = Issues commits = Commits releases = Releases +file_raw = Raw +file_history = History +file_view_raw = View Raw commits.commits = Commits commits.search = Search commits diff --git a/conf/locale/locale_zh-CN.ini b/conf/locale/locale_zh-CN.ini index aeed47561..c704ad205 100644 --- a/conf/locale/locale_zh-CN.ini +++ b/conf/locale/locale_zh-CN.ini @@ -273,6 +273,9 @@ tags = 标签列表 issues = 工单管理 commits = 提交历史 releases = 版本发布 +file_raw = 原始文件 +file_history = 文件历史 +file_view_raw = 查看原始文件 commits.commits = 次代码提交 commits.search = 搜索提交历史 diff --git a/gogs.go b/gogs.go index 05fcd2cd9..85a5626cf 100644 --- a/gogs.go +++ b/gogs.go @@ -17,7 +17,7 @@ import ( "github.com/gogits/gogs/modules/setting" ) -const APP_VER = "0.5.5.1010 Beta" +const APP_VER = "0.5.5.1011 Beta" func init() { runtime.GOMAXPROCS(runtime.NumCPU()) diff --git a/models/repo.go b/models/repo.go index c33299519..419d034c6 100644 --- a/models/repo.go +++ b/models/repo.go @@ -663,7 +663,7 @@ func RepoPath(userName, repoName string) string { func TransferOwnership(u *User, newOwner string, repo *Repository) error { newUser, err := GetUserByName(newOwner) if err != nil { - return err + return fmt.Errorf("fail to get new owner(%s): %v", newOwner, err) } // Check if new owner has repository with same name. diff --git a/models/user.go b/models/user.go index ee8f8586d..dc9b052ca 100644 --- a/models/user.go +++ b/models/user.go @@ -488,7 +488,7 @@ func GetUserByName(name string) (*User, error) { return user, nil } -// GetUserEmailsByNames returns a slice of e-mails corresponds to names. +// GetUserEmailsByNames returns a list of e-mails corresponds to names. func GetUserEmailsByNames(names []string) []string { mails := make([]string, 0, len(names)) for _, name := range names { diff --git a/modules/middleware/context.go b/modules/middleware/context.go index 1d9f57389..86e98c907 100644 --- a/modules/middleware/context.go +++ b/modules/middleware/context.go @@ -75,12 +75,6 @@ type Context struct { } } -// Query querys form parameter. -func (ctx *Context) Query(name string) string { - ctx.Req.ParseForm() - return ctx.Req.Form.Get(name) -} - // HasError returns true if error occurs in form validation. func (ctx *Context) HasApiError() bool { hasErr, ok := ctx.Data["HasError"] diff --git a/public/ng/css/ui.css b/public/ng/css/ui.css index cc1a277fa..5aa1490f7 100644 --- a/public/ng/css/ui.css +++ b/public/ng/css/ui.css @@ -457,6 +457,9 @@ dt { box-sizing: content-box; text-align: center; } +.btn-comb { + margin-left: -1px; +} .btn-disabled { opacity: .6; cursor: not-allowed; diff --git a/public/ng/less/ui/form.less b/public/ng/less/ui/form.less index b3de4273c..6e33e606b 100644 --- a/public/ng/less/ui/form.less +++ b/public/ng/less/ui/form.less @@ -102,6 +102,9 @@ box-sizing: content-box; text-align: center; } +.btn-comb { + margin-left: -1px; +} .btn-disabled { opacity: .6; diff --git a/routers/repo/commit.go b/routers/repo/commit.go index 4c5bcf0cb..b2c2e0f9a 100644 --- a/routers/repo/commit.go +++ b/routers/repo/commit.go @@ -276,13 +276,15 @@ func FileHistory(ctx *middleware.Context) { nextPage = 0 } - ctx.Data["Commits"], err = ctx.Repo.GitRepo.CommitsByFileAndRange( + commits, err := ctx.Repo.GitRepo.CommitsByFileAndRange( branchName, fileName, page) if err != nil { ctx.Handle(500, "repo.FileHistory(CommitsByRange)", err) return } + commits = models.ValidateCommitsWithEmails(commits) + ctx.Data["Commits"] = commits ctx.Data["Username"] = userName ctx.Data["Reponame"] = repoName ctx.Data["FileName"] = fileName diff --git a/routers/repo/view.go b/routers/repo/view.go index ba76a6ada..26fa0b4c7 100644 --- a/routers/repo/view.go +++ b/routers/repo/view.go @@ -166,7 +166,7 @@ func Home(ctx *middleware.Context) { } if readmeFile != nil { - ctx.Data["ReadmeInHome"] = true + ctx.Data["ReadmeInList"] = true ctx.Data["ReadmeExist"] = true if dataRc, err := readmeFile.Data(); err != nil { ctx.Handle(404, "repo.SinglereadmeFile.LookupBlob", err) diff --git a/templates/.VERSION b/templates/.VERSION index d62a81b60..3f42d63cf 100644 --- a/templates/.VERSION +++ b/templates/.VERSION @@ -1 +1 @@ -0.5.5.1010 Beta \ No newline at end of file +0.5.5.1011 Beta \ No newline at end of file diff --git a/templates/admin/monitor.tmpl b/templates/admin/monitor.tmpl index 5da8f48eb..a7942e09c 100644 --- a/templates/admin/monitor.tmpl +++ b/templates/admin/monitor.tmpl @@ -58,7 +58,7 @@ {{.Pid}} {{.Description}} {{.Start}} - {{TimeSince .Start .i18n.Lang}} + {{TimeSince .Start $.Lang}} {{end}} diff --git a/templates/repo/home.tmpl b/templates/repo/home.tmpl index e7d4c45dc..49bf1fd14 100644 --- a/templates/repo/home.tmpl +++ b/templates/repo/home.tmpl @@ -54,16 +54,16 @@ {{end}} {{end}} - + {{if .IsFile}} {{template "repo/view_file" .}} diff --git a/templates/repo/single.tmpl b/templates/repo/single.tmpl deleted file mode 100644 index d640fb00b..000000000 --- a/templates/repo/single.tmpl +++ /dev/null @@ -1,40 +0,0 @@ -{{template "base/head" .}} -{{template "base/navbar" .}} -{{template "repo/nav" .}} -{{template "repo/toolbar" .}} -
-
-
- {{ $n := len .Treenames}} - {{if not .IsFile}}{{end}} - - {{ $l := Subtract $n 1}} - -
- {{if .IsFile}} - {{template "repo/single_file" .}} - {{else}} - {{template "repo/single_list" .}} - {{end}} -
-
-{{template "base/footer" .}} diff --git a/templates/repo/single_bare.tmpl b/templates/repo/single_bare.tmpl deleted file mode 100644 index f2b195617..000000000 --- a/templates/repo/single_bare.tmpl +++ /dev/null @@ -1,40 +0,0 @@ -{{template "base/head" .}} -{{template "base/navbar" .}} -{{template "repo/nav" .}} -{{template "repo/toolbar" .}} -
-
-
-
-

Quick Guide

-
-
-

Clone this repository

-
- - - - - - - - -
-

We recommend every repository include a README, LICENSE, and .gitignore.

-
-

Create a new repository on the command line

-
touch README.md
-git init
-git add README.md
-git commit -m "first commit"
-git remote add origin 
-git push -u origin master
-
-

Push an existing repository from the command line

-
git remote add origin 
-git push -u origin master
-
-
-
-
-{{template "base/footer" .}} diff --git a/templates/repo/single_file.tmpl b/templates/repo/single_file.tmpl deleted file mode 100644 index 0ce04e13b..000000000 --- a/templates/repo/single_file.tmpl +++ /dev/null @@ -1,51 +0,0 @@ -
-
- {{if .ReadmeExist}} - - {{if .ReadmeInSingle}} - {{.FileName}} - {{else}} - {{.FileName}} {{FileSize .FileSize}} - {{end}} - {{else}} - - {{.FileName}} {{FileSize .FileSize}} - {{end}} - {{if not .ReadmeInSingle}} -
- - Raw - - History - -
- {{end}} -
- - {{if not .FileIsText}} -
- {{if .IsImageFile}} - - {{else}} - View Raw - {{end}} -
- {{else}} - {{if .ReadmeExist}} -
- {{.FileContent|str2html}} -
- {{else}} -
- - - - - - - -
{{.FileContent}}
-
- {{end}} - {{end}} -
diff --git a/templates/repo/single_list.tmpl b/templates/repo/single_list.tmpl deleted file mode 100644 index 03511a80a..000000000 --- a/templates/repo/single_list.tmpl +++ /dev/null @@ -1,51 +0,0 @@ -
-
- {{.LastCommit.Summary}} -
-
- {{.LastCommit.Author.Name}} {{TimeSince .LastCommit.Author.When}} -
- - - - - - - - - - - {{if .HasParentPath}} - - - - - - - {{end}} - {{range $item := .Files}} - {{$entry := index $item 0}} - {{$commit := index $item 1}} - - - - - - - {{end}} - - -
-{{if .ReadmeExist}} - {{template "repo/single_file" .}} -{{end}} diff --git a/templates/repo/view_file.tmpl b/templates/repo/view_file.tmpl index 228d10cd9..4e2d4fc64 100644 --- a/templates/repo/view_file.tmpl +++ b/templates/repo/view_file.tmpl @@ -2,15 +2,23 @@

{{if .ReadmeExist}} - {{if .ReadmeInHome}} + {{if .ReadmeInList}} {{.FileName}} {{else}} {{.FileName}}{{FileSize .FileSize}} {{end}} {{else}} - - {{.FileName}}{{FileSize .FileSize}} + + {{.FileName}}{{FileSize .FileSize}} {{end}} + {{if not .ReadmeInList}} + + + + + + + {{end}}

{{if .ReadmeExist}} @@ -20,7 +28,7 @@ {{if .IsImageFile}} {{else}} - View Raw + {{.i18n.Tr "repo.file_view_raw"}} {{end}}
{{else if .FileSize}} diff --git a/templates/repo/view_list.tmpl b/templates/repo/view_list.tmpl index e6c43d9e4..032b9e0f1 100644 --- a/templates/repo/view_list.tmpl +++ b/templates/repo/view_list.tmpl @@ -10,7 +10,7 @@ {{ShortSha .LastCommit.Id.String}} {{.LastCommit.Summary}} - {{TimeSince .LastCommit.Author.When .i18n.Lang}} + {{TimeSince .LastCommit.Author.When $.Lang}} @@ -45,7 +45,7 @@ {{$commit.Summary}} - {{TimeSince $commit.Committer.When $.i18n.Lang}} + {{TimeSince $commit.Committer.When $.Lang}} {{end}}