Files
gitea/templates/repo/issue/view_content/pull_merge_instruction.tmpl
T
d16daed041 fix: handle git branch name with special chars correctly (#39483) (#39515)
Backport #39483 

Fix the bugs:
* Commit graph page doesn't show
* PR command line instructions are wrong

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: silverwind <me@silverwind.io>
2026-10-01 14:07:00 +08:00

62 lines
2.6 KiB
Handlebars

{{$data := $.MergeBoxData}}
{{$pull := $.PullRequest}}
<details>
<summary class="tw-pl-1">{{/* align with other item icon & text */}}
<span class="tw-pl-2">{{ctx.Locale.Tr "repo.pulls.cmd_instruction_hint"}}</span>
</summary>
<div class="tw-my-[5px]">
<div>
<h3 class="tw-m-0">{{ctx.Locale.Tr "repo.pulls.cmd_instruction_checkout_title"}}</h3>
{{ctx.Locale.Tr "repo.pulls.cmd_instruction_checkout_desc"}}
</div>
{{$args := $pull.GetInstructionsCliArgs}}
<div class="ui secondary segment tw-font-mono">
{{$gitRemoteName := ctx.RootData.SystemConfig.Repository.GitGuideRemoteName.Value ctx}}
{{if eq $pull.Flow 0}}
<div>git fetch -u {{if ne $pull.HeadRepo.ID $pull.BaseRepo.ID}}{{$pull.HeadRepo.HTMLURL ctx}}{{else}}{{$gitRemoteName}}{{end}} {{$args.HeadBranchArg}}:{{$args.LocalBranchArg}}</div>
{{else}}
<div>git fetch -u {{$gitRemoteName}} {{$pull.GetGitHeadRefName}}:{{$args.LocalBranchArg}}</div>
{{end}}
<div>git checkout {{$args.LocalBranchArg}}</div>
</div>
{{if $data.ShowMergeInstructions}}
<div>
<h3 class="tw-m-0">{{ctx.Locale.Tr "repo.pulls.cmd_instruction_merge_title"}}</h3>
{{ctx.Locale.Tr "repo.pulls.cmd_instruction_merge_desc"}}
{{if not $data.AutodetectManualMerge}}
<div>{{ctx.Locale.Tr "repo.pulls.cmd_instruction_merge_warning"}}</div>
{{end}}
</div>
<div class="ui secondary segment tw-font-mono">
<div data-pull-merge-style="merge">
<div>git checkout {{$args.BaseBranchArg}}</div>
<div>git merge --no-ff {{$args.LocalBranchArg}}</div>
</div>
<div class="tw-hidden" data-pull-merge-style="rebase">
<div>git checkout {{$args.BaseBranchArg}}</div>
<div>git merge --ff-only {{$args.LocalBranchArg}}</div>
</div>
<div class="tw-hidden" data-pull-merge-style="rebase-merge">
<div>git checkout {{$args.LocalBranchArg}}</div>
<div>git rebase {{$args.BaseBranchArg}}</div>
<div>git checkout {{$args.BaseBranchArg}}</div>
<div>git merge --no-ff {{$args.LocalBranchArg}}</div>
</div>
<div class="tw-hidden" data-pull-merge-style="squash">
<div>git checkout {{$args.BaseBranchArg}}</div>
<div>git merge --squash {{$args.LocalBranchArg}}</div>
</div>
<div class="tw-hidden" data-pull-merge-style="fast-forward-only">
<div>git checkout {{$args.BaseBranchArg}}</div>
<div>git merge --ff-only {{$args.LocalBranchArg}}</div>
</div>
<div class="tw-hidden" data-pull-merge-style="manually-merged">
<div>git checkout {{$args.BaseBranchArg}}</div>
<div>git merge {{$args.LocalBranchArg}}</div>
</div>
<div>git push {{$gitRemoteName}} {{$args.BaseBranchArg}}</div>
</div>
{{end}}
</div>
</details>