Signed-off-by: a101211279
<1012112796@qq.com>
Co-authored-by: Lauris BH <lauris@nix.lv>
tags/v1.13.0-rc1
@@ -48,6 +48,7 @@ func doAPICreateRepository(ctx APITestContext, empty bool, callback ...func(*tes | |||
Description: "Temporary repo", | |||
Name: ctx.Reponame, | |||
Private: true, | |||
Template: true, | |||
Gitignores: "", | |||
License: "WTFPL", | |||
Readme: "Default", |
@@ -1083,6 +1083,7 @@ type CreateRepoOptions struct { | |||
DefaultBranch string | |||
IsPrivate bool | |||
IsMirror bool | |||
IsTemplate bool | |||
AutoInit bool | |||
Status RepositoryStatus | |||
TrustModel TrustModelType |
@@ -38,6 +38,7 @@ type CreateRepoForm struct { | |||
IssueLabels string | |||
License string | |||
Readme string | |||
Template bool | |||
RepoTemplate int64 | |||
GitContent bool |
@@ -40,6 +40,7 @@ func CreateRepository(doer, u *models.User, opts models.CreateRepoOptions) (*mod | |||
OriginalServiceType: opts.GitServiceType, | |||
IsPrivate: opts.IsPrivate, | |||
IsFsckEnabled: !opts.IsMirror, | |||
IsTemplate: opts.IsTemplate, | |||
CloseIssuesViaCommitInAnyBranch: setting.Repository.DefaultCloseIssuesViaCommitsInAnyBranch, | |||
Status: opts.Status, | |||
IsEmpty: !opts.AutoInit, |
@@ -109,6 +109,8 @@ type CreateRepoOption struct { | |||
IssueLabels string `json:"issue_labels"` | |||
// Whether the repository should be auto-intialized? | |||
AutoInit bool `json:"auto_init"` | |||
// Whether the repository is template | |||
Template bool `json:"template"` | |||
// Gitignores to use | |||
Gitignores string `json:"gitignores"` | |||
// License to use |
@@ -245,6 +245,7 @@ func CreateUserRepo(ctx *context.APIContext, owner *models.User, opt api.CreateR | |||
AutoInit: opt.AutoInit, | |||
DefaultBranch: opt.DefaultBranch, | |||
TrustModel: models.ToTrustModel(opt.TrustModel), | |||
IsTemplate: opt.Template, | |||
}) | |||
if err != nil { | |||
if models.IsErrRepoAlreadyExist(err) { |
@@ -250,6 +250,7 @@ func CreatePost(ctx *context.Context, form auth.CreateRepoForm) { | |||
IsPrivate: form.Private || setting.Repository.ForcePrivate, | |||
DefaultBranch: form.DefaultBranch, | |||
AutoInit: form.AutoInit, | |||
IsTemplate: form.Template, | |||
TrustModel: models.ToTrustModel(form.TrustModel), | |||
}) | |||
if err == nil { |
@@ -181,6 +181,13 @@ | |||
</div> | |||
</div> | |||
</div> | |||
<div class="inline field"> | |||
<label>{{.i18n.Tr "repo.template"}}</label> | |||
<div class="ui checkbox"> | |||
<input class="hidden" name="template" type="checkbox" tabindex="0"> | |||
<label>{{.i18n.Tr "repo.template_helper"}}</label> | |||
</div> | |||
</div> | |||
</div> | |||
<br/> |
@@ -12063,6 +12063,11 @@ | |||
"type": "string", | |||
"x-go-name": "Readme" | |||
}, | |||
"template": { | |||
"description": "Whether the repository is template", | |||
"type": "boolean", | |||
"x-go-name": "Template" | |||
}, | |||
"trust_model": { | |||
"description": "TrustModel of the repository", | |||
"type": "string", |