mirror of
https://github.com/go-gitea/gitea.git
synced 2026-10-28 16:47:01 +09:00
Only the plain git migration can clone from a local server path. Other services (Gitea, GitLab, Gogs, OneDev, GitBucket, Codebase, CodeCommit, Bitbucket Server) are accessed through their remote API, so a local path never works, yet their migrate forms advertised "or a local server path". - Remove the local path hint from those templates. - Add `IsMigrateURLAllowedForService` and use it in the web and API migrate handlers and in `MigrateRepository`, rejecting local paths for any service other than plain git. - Add a unit test. Raised in review of #39913. _Authored with Codet (AI assistant) on behalf of @lunny._ --------- Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
71 lines
2.5 KiB
Handlebars
71 lines
2.5 KiB
Handlebars
{{template "base/head" .}}
|
|
<div role="main" aria-label="{{.Title}}" class="page-content repository new migrate">
|
|
<div class="ui container medium-width">
|
|
<h3 class="ui top attached header">
|
|
{{ctx.Locale.Tr "repo.migrate.migrate" .service.Title}}
|
|
</h3>
|
|
<div class="ui attached segment">
|
|
{{template "base/alert" .}}
|
|
<form class="ui form left-right-form form-fetch-action" action="{{.Link}}" method="post">
|
|
{{template "repo/migrate/common-init" (dict "ServiceType" .service)}}
|
|
|
|
{{template "repo/migrate/common-clone-addr"}}
|
|
|
|
<div class="inline field">
|
|
<label>{{ctx.Locale.Tr "access_token"}}</label>
|
|
<input name="auth_token" type="password" autocomplete="new-password">
|
|
<a target="_blank" href="https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html">{{svg "octicon-question"}}</a>
|
|
<span class="help">{{ctx.Locale.Tr "repo.migrate.gitlab_token_desc"}}</span>
|
|
</div>
|
|
|
|
{{template "repo/migrate/common-options" .}}
|
|
|
|
<div class="inline field">
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items"}}</label>
|
|
<div class="ui checkbox">
|
|
<input name="wiki" type="checkbox">
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items_wiki"}}</label>
|
|
</div>
|
|
</div>
|
|
<div id="migrate_items" class="inline field">
|
|
<span class="help">{{ctx.Locale.Tr "repo.migrate.migrate_items_options"}}</span>
|
|
<div class="inline field">
|
|
<label></label>
|
|
<div class="ui checkbox">
|
|
<input name="labels" type="checkbox">
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items_labels"}}</label>
|
|
</div>
|
|
<div class="ui checkbox">
|
|
<input name="issues" type="checkbox">
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items_issues"}}</label>
|
|
</div>
|
|
</div>
|
|
<div class="inline field">
|
|
<label></label>
|
|
<div class="ui checkbox">
|
|
<input name="pull_requests" type="checkbox">
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items_merge_requests"}}</label>
|
|
</div>
|
|
<div class="ui checkbox">
|
|
<input name="releases" type="checkbox">
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items_releases"}}</label>
|
|
</div>
|
|
</div>
|
|
<div class="inline field">
|
|
<label></label>
|
|
<div class="ui checkbox">
|
|
<input name="milestones" type="checkbox">
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items_milestones"}}</label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="divider"></div>
|
|
|
|
{{template "repo/migrate/common-migrated-repo"}}
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{template "base/footer" .}}
|