Skip to content

Commit 26dfe88

Browse files
authored
Hide command line merge instructions when user can't push (#17339)
Hides the command line instructions if the authenticated user can't push to the base branch. Closes #17121
1 parent 554988c commit 26dfe88

File tree

2 files changed

+22
-18
lines changed

2 files changed

+22
-18
lines changed

Diff for: routers/web/repo/issue.go

+2
Original file line numberDiff line numberDiff line change
@@ -1543,6 +1543,7 @@ func ViewIssue(ctx *context.Context) {
15431543
ctx.ServerError("LoadProtectedBranch", err)
15441544
return
15451545
}
1546+
ctx.Data["ShowMergeInstructions"] = true
15461547
if pull.ProtectedBranch != nil {
15471548
cnt := pull.ProtectedBranch.GetGrantedApprovalsCount(pull)
15481549
ctx.Data["IsBlockedByApprovals"] = !pull.ProtectedBranch.HasEnoughApprovals(pull)
@@ -1554,6 +1555,7 @@ func ViewIssue(ctx *context.Context) {
15541555
ctx.Data["ChangedProtectedFiles"] = pull.ChangedProtectedFiles
15551556
ctx.Data["IsBlockedByChangedProtectedFiles"] = len(pull.ChangedProtectedFiles) != 0
15561557
ctx.Data["ChangedProtectedFilesNum"] = len(pull.ChangedProtectedFiles)
1558+
ctx.Data["ShowMergeInstructions"] = pull.ProtectedBranch.CanUserPush(ctx.User.ID)
15571559
}
15581560
ctx.Data["WillSign"] = false
15591561
if ctx.User != nil {

Diff for: templates/repo/issue/view_content/pull.tmpl

+20-18
Original file line numberDiff line numberDiff line change
@@ -485,25 +485,27 @@
485485
{{end}}
486486
</div>
487487
</div>
488-
<div class="instruct-toggle ml-3"> {{$.i18n.Tr "repo.pulls.merge_instruction_hint" | Safe}} </div>
489-
<div class="instruct-content" style="display:none">
490-
<div class="ui divider"></div>
491-
<div><h3 class="di">{{$.i18n.Tr "step1"}} </h3>{{$.i18n.Tr "repo.pulls.merge_instruction_step1_desc"}}</div>
492-
<div class="ui secondary segment">
493-
{{if eq .Issue.PullRequest.Flow 0}}
494-
<div>git checkout -b {{if ne .Issue.PullRequest.HeadRepo.ID .Issue.PullRequest.BaseRepo.ID}}{{.Issue.PullRequest.HeadRepo.OwnerName}}-{{end}}{{.Issue.PullRequest.HeadBranch}} {{.Issue.PullRequest.BaseBranch}}</div>
495-
<div>git pull {{if ne .Issue.PullRequest.HeadRepo.ID .Issue.PullRequest.BaseRepo.ID}}{{.Issue.PullRequest.HeadRepo.HTMLURL}}{{else}}origin{{end}} {{.Issue.PullRequest.HeadBranch}}</div>
496-
{{else}}
497-
<div>git fetch origin {{.Issue.PullRequest.GetGitRefName}}:{{.Issue.PullRequest.HeadBranch}}</div>
498-
{{end}}
499-
</div>
500-
<div><h3 class="di">{{$.i18n.Tr "step2"}} </h3>{{$.i18n.Tr "repo.pulls.merge_instruction_step2_desc"}}</div>
501-
<div class="ui secondary segment">
502-
<div>git checkout {{.Issue.PullRequest.BaseBranch}}</div>
503-
<div>git merge --no-ff {{if ne .Issue.PullRequest.HeadRepo.ID .Issue.PullRequest.BaseRepo.ID}}{{.Issue.PullRequest.HeadRepo.OwnerName}}-{{end}}{{.Issue.PullRequest.HeadBranch}}</div>
504-
<div>git push origin {{.Issue.PullRequest.BaseBranch}}</div>
488+
{{if .ShowMergeInstructions}}
489+
<div class="instruct-toggle ml-3"> {{$.i18n.Tr "repo.pulls.merge_instruction_hint" | Safe}} </div>
490+
<div class="instruct-content" style="display:none">
491+
<div class="ui divider"></div>
492+
<div><h3 class="di">{{$.i18n.Tr "step1"}} </h3>{{$.i18n.Tr "repo.pulls.merge_instruction_step1_desc"}}</div>
493+
<div class="ui secondary segment">
494+
{{if eq .Issue.PullRequest.Flow 0}}
495+
<div>git checkout -b {{if ne .Issue.PullRequest.HeadRepo.ID .Issue.PullRequest.BaseRepo.ID}}{{.Issue.PullRequest.HeadRepo.OwnerName}}-{{end}}{{.Issue.PullRequest.HeadBranch}} {{.Issue.PullRequest.BaseBranch}}</div>
496+
<div>git pull {{if ne .Issue.PullRequest.HeadRepo.ID .Issue.PullRequest.BaseRepo.ID}}{{.Issue.PullRequest.HeadRepo.HTMLURL}}{{else}}origin{{end}} {{.Issue.PullRequest.HeadBranch}}</div>
497+
{{else}}
498+
<div>git fetch origin {{.Issue.PullRequest.GetGitRefName}}:{{.Issue.PullRequest.HeadBranch}}</div>
499+
{{end}}
500+
</div>
501+
<div><h3 class="di">{{$.i18n.Tr "step2"}} </h3>{{$.i18n.Tr "repo.pulls.merge_instruction_step2_desc"}}</div>
502+
<div class="ui secondary segment">
503+
<div>git checkout {{.Issue.PullRequest.BaseBranch}}</div>
504+
<div>git merge --no-ff {{if ne .Issue.PullRequest.HeadRepo.ID .Issue.PullRequest.BaseRepo.ID}}{{.Issue.PullRequest.HeadRepo.OwnerName}}-{{end}}{{.Issue.PullRequest.HeadBranch}}</div>
505+
<div>git push origin {{.Issue.PullRequest.BaseBranch}}</div>
506+
</div>
505507
</div>
506-
</div>
508+
{{end}}
507509
{{else}}
508510
<div class="ui divider"></div>
509511
<div class="item text red">

0 commit comments

Comments
 (0)