![Demo](http://gowalker.org/public/gogs_demo.gif) | ![Demo](http://gowalker.org/public/gogs_demo.gif) | ||||
##### Current version: 0.4.9 Beta | |||||
##### Current version: 0.5.0 Beta | |||||
### NOTICES | ### NOTICES | ||||
- Register/delete/rename account | - Register/delete/rename account | ||||
- Create/manage/delete organization with team management | - Create/manage/delete organization with team management | ||||
- Create/migrate/mirror/delete/watch/rename/transfer public/private repository | - Create/migrate/mirror/delete/watch/rename/transfer public/private repository | ||||
- Repository viewer/release/issue tracker/webhooks | |||||
- Repository viewer/release/issue tracker | |||||
- Repository and Organization level webhooks | |||||
- Add/remove repository collaborators | - Add/remove repository collaborators | ||||
- Gravatar and cache support | - Gravatar and cache support | ||||
- Mail service(register, issue) | - Mail service(register, issue) |
![Demo](http://gowalker.org/public/gogs_demo.gif) | ![Demo](http://gowalker.org/public/gogs_demo.gif) | ||||
##### 当前版本:0.4.9 Beta | |||||
##### 当前版本:0.5.0 Beta | |||||
## 开发目的 | ## 开发目的 | ||||
- 注册/删除/重命名 用户 | - 注册/删除/重命名 用户 | ||||
- 创建/管理/删除 组织以及团队管理功能 | - 创建/管理/删除 组织以及团队管理功能 | ||||
- 创建/迁移/镜像/删除/关注/重命名/转移 公开/私有 仓库 | - 创建/迁移/镜像/删除/关注/重命名/转移 公开/私有 仓库 | ||||
- 仓库 浏览/发布/工单管理/Web 钩子 | |||||
- 仓库 浏览/发布/工单管理 | |||||
- 仓库和组织级别 Web 钩子 | |||||
- 添加/删除 仓库协作者 | - 添加/删除 仓库协作者 | ||||
- Gravatar 以及缓存支持 | - Gravatar 以及缓存支持 | ||||
- 邮件服务(注册、Issue) | - 邮件服务(注册、Issue) |
Description: `Dump compresses all related files and database into zip file. | Description: `Dump compresses all related files and database into zip file. | ||||
It can be used for backup and capture Gogs server image to send to maintainer`, | It can be used for backup and capture Gogs server image to send to maintainer`, | ||||
Action: runDump, | Action: runDump, | ||||
Flags: []cli.Flag{}, | |||||
Flags: []cli.Flag{ | |||||
cli.BoolFlag{"verbose, v", "show process details", ""}, | |||||
}, | |||||
} | } | ||||
func runDump(*cli.Context) { | |||||
func runDump(ctx *cli.Context) { | |||||
setting.NewConfigContext() | setting.NewConfigContext() | ||||
models.LoadModelsConfig() | models.LoadModelsConfig() | ||||
models.SetEngine() | models.SetEngine() | ||||
log.Printf("Dumping local repositories...%s", setting.RepoRootPath) | log.Printf("Dumping local repositories...%s", setting.RepoRootPath) | ||||
zip.Verbose = false | |||||
zip.Verbose = ctx.Bool("verbose") | |||||
defer os.Remove("gogs-repo.zip") | defer os.Remove("gogs-repo.zip") | ||||
if err := zip.PackTo(setting.RepoRootPath, "gogs-repo.zip", true); err != nil { | if err := zip.PackTo(setting.RepoRootPath, "gogs-repo.zip", true); err != nil { | ||||
log.Fatalf("Fail to dump local repositories: %v", err) | log.Fatalf("Fail to dump local repositories: %v", err) |
SkipLogging: !setting.DisableRouterLog, | SkipLogging: !setting.DisableRouterLog, | ||||
}, | }, | ||||
)) | )) | ||||
if setting.EnableGzip { | |||||
m.Use(macaron.Gzip()) | |||||
} | |||||
// if setting.EnableGzip { | |||||
// m.Use(macaron.Gzip()) | |||||
// } | |||||
m.Use(macaron.Renderer(macaron.RenderOptions{ | m.Use(macaron.Renderer(macaron.RenderOptions{ | ||||
Directory: path.Join(setting.StaticRootPath, "templates"), | Directory: path.Join(setting.StaticRootPath, "templates"), | ||||
Funcs: []template.FuncMap{base.TemplateFuncs}, | Funcs: []template.FuncMap{base.TemplateFuncs}, |
; default is the path where Gogs is executed | ; default is the path where Gogs is executed | ||||
STATIC_ROOT_PATH = | STATIC_ROOT_PATH = | ||||
; Application level GZIP support | ; Application level GZIP support | ||||
ENABLE_GZIP = false | |||||
#ENABLE_GZIP = false | |||||
[database] | [database] | ||||
; Either "mysql", "postgres" or "sqlite3", it's your choice | ; Either "mysql", "postgres" or "sqlite3", it's your choice |
<ul class="panel-body setting-list"> | <ul class="panel-body setting-list"> | ||||
<li>{{.i18n.Tr "org.settings.hooks_desc" | Str2html}}</li> | <li>{{.i18n.Tr "org.settings.hooks_desc" | Str2html}}</li> | ||||
{{range .Webhooks}} | {{range .Webhooks}} | ||||
<li> | |||||
{{if .IsActive}} | |||||
<span class="left text-success"><i class="octicon octicon-check"></i></span> | |||||
{{else}} | |||||
<span class="left text-grey"><i class="octicon octicon-primitive-dot"></i></span> | |||||
{{end}} | |||||
<a class="link" href="{{$.OrgLink}}/settings/hooks/{{.Id}}">{{.Url}}</a> | |||||
<a href="{{$.OrgLink}}/settings/hooks?remove={{.Id}}" class="text-red right"><i class="fa fa-times"></i></a> | |||||
<a href="{{$.OrgLink}}/settings/hooks/{{.Id}}" class="text-blue right"><i class="fa fa-pencil"></i></a> | |||||
</li> | |||||
<li> | |||||
{{if .IsActive}} | |||||
<span class="left text-success"><i class="octicon octicon-check"></i></span> | |||||
{{else}} | |||||
<span class="left text-grey"><i class="octicon octicon-primitive-dot"></i></span> | |||||
{{end}} | |||||
<a class="link" href="{{$.OrgLink}}/settings/hooks/{{.Id}}">{{.Url}}</a> | |||||
<a href="{{$.OrgLink}}/settings/hooks?remove={{.Id}}" class="text-red right"><i class="fa fa-times"></i></a> | |||||
<a href="{{$.OrgLink}}/settings/hooks/{{.Id}}" class="text-blue right"><i class="fa fa-pencil"></i></a> | |||||
</li> | |||||
{{end}} | {{end}} | ||||
</ul> | </ul> | ||||
</div> | </div> |