Skip to content

Commit 2d71cdb

Browse files
lunnysilverwind
andauthored
Add pull request manually merge instruction (#13840)
* add pull request command line instructions * Add pull request manually merge instuction * Fix styles * Fix lint * Move inline style to class file * add space between merge button and hint text * Add sentence end charcter * Change the language file * adjust secondary bg * further adjustment Co-authored-by: silverwind <[email protected]>
1 parent c85bb62 commit 2d71cdb

File tree

7 files changed

+78
-42
lines changed

7 files changed

+78
-42
lines changed

options/locale/locale_en-US.ini

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,9 @@ write = Write
8686
preview = Preview
8787
loading = Loading…
8888

89+
step1 = Step 1:
90+
step2 = Step 2:
91+
8992
error404 = The page you are trying to reach either <strong>does not exist</strong> or <strong>you are not authorized</strong> to view it.
9093

9194
[error]
@@ -1296,6 +1299,10 @@ pulls.update_not_allowed = You are not allowed to update branch
12961299
pulls.outdated_with_base_branch = This branch is out-of-date with the base branch
12971300
pulls.closed_at = `closed this pull request <a id="%[1]s" href="#%[1]s">%[2]s</a>`
12981301
pulls.reopened_at = `reopened this pull request <a id="%[1]s" href="#%[1]s">%[2]s</a>`
1302+
pulls.merge_instruction_hint = `You can also view <a class="show-instruction">command line instructions</a>.`
1303+
1304+
pulls.merge_instruction_step1_desc = From your project repository, check out a new branch and test the changes.
1305+
pulls.merge_instruction_step2_desc = Merge the changes and update on Gitea.
12991306
13001307
milestones.new = New Milestone
13011308
milestones.open_tab = %d Open

templates/repo/issue/view_content/pull.tmpl

Lines changed: 53 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -323,43 +323,60 @@
323323
</form>
324324
</div>
325325
{{end}}
326-
<div class="ui {{if $notAllOverridableChecksOk}}red{{else}}green{{end}} buttons merge-button">
327-
<button class="ui button" data-do="{{.MergeStyle}}">
328-
{{svg "octicon-git-merge"}}
329-
<span class="button-text">
330-
{{if eq .MergeStyle "merge"}}
331-
{{$.i18n.Tr "repo.pulls.merge_pull_request"}}
332-
{{end}}
333-
{{if eq .MergeStyle "rebase"}}
334-
{{$.i18n.Tr "repo.pulls.rebase_merge_pull_request"}}
335-
{{end}}
336-
{{if eq .MergeStyle "rebase-merge"}}
337-
{{$.i18n.Tr "repo.pulls.rebase_merge_commit_pull_request"}}
338-
{{end}}
339-
{{if eq .MergeStyle "squash"}}
340-
{{$.i18n.Tr "repo.pulls.squash_merge_pull_request"}}
341-
{{end}}
342-
</span>
343-
</button>
344-
{{if gt $prUnit.PullRequestsConfig.AllowedMergeStyleCount 1}}
345-
<div class="ui dropdown icon button">
346-
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
347-
<div class="menu">
348-
{{if $prUnit.PullRequestsConfig.AllowMerge}}
349-
<div class="item{{if eq .MergeStyle "merge"}} active selected{{end}}" data-do="merge">{{$.i18n.Tr "repo.pulls.merge_pull_request"}}</div>
350-
{{end}}
351-
{{if $prUnit.PullRequestsConfig.AllowRebase}}
352-
<div class="item{{if eq .MergeStyle "rebase"}} active selected{{end}}" data-do="rebase">{{$.i18n.Tr "repo.pulls.rebase_merge_pull_request"}}</div>
353-
{{end}}
354-
{{if $prUnit.PullRequestsConfig.AllowRebaseMerge}}
355-
<div class="item{{if eq .MergeStyle "rebase-merge"}} active selected{{end}}" data-do="rebase-merge">{{$.i18n.Tr "repo.pulls.rebase_merge_commit_pull_request"}}</div>
356-
{{end}}
357-
{{if $prUnit.PullRequestsConfig.AllowSquash}}
358-
<div class="item{{if eq .MergeStyle "squash"}} active selected{{end}}" data-do="squash">{{$.i18n.Tr "repo.pulls.squash_merge_pull_request"}}</div>
359-
{{end}}
326+
<div class="dib">
327+
<div class="ui {{if $notAllOverridableChecksOk}}red{{else}}green{{end}} buttons merge-button">
328+
<button class="ui button" data-do="{{.MergeStyle}}">
329+
{{svg "octicon-git-merge"}}
330+
<span class="button-text">
331+
{{if eq .MergeStyle "merge"}}
332+
{{$.i18n.Tr "repo.pulls.merge_pull_request"}}
333+
{{end}}
334+
{{if eq .MergeStyle "rebase"}}
335+
{{$.i18n.Tr "repo.pulls.rebase_merge_pull_request"}}
336+
{{end}}
337+
{{if eq .MergeStyle "rebase-merge"}}
338+
{{$.i18n.Tr "repo.pulls.rebase_merge_commit_pull_request"}}
339+
{{end}}
340+
{{if eq .MergeStyle "squash"}}
341+
{{$.i18n.Tr "repo.pulls.squash_merge_pull_request"}}
342+
{{end}}
343+
</span>
344+
</button>
345+
{{if gt $prUnit.PullRequestsConfig.AllowedMergeStyleCount 1}}
346+
<div class="ui dropdown icon button">
347+
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
348+
<div class="menu">
349+
{{if $prUnit.PullRequestsConfig.AllowMerge}}
350+
<div class="item{{if eq .MergeStyle "merge"}} active selected{{end}}" data-do="merge">{{$.i18n.Tr "repo.pulls.merge_pull_request"}}</div>
351+
{{end}}
352+
{{if $prUnit.PullRequestsConfig.AllowRebase}}
353+
<div class="item{{if eq .MergeStyle "rebase"}} active selected{{end}}" data-do="rebase">{{$.i18n.Tr "repo.pulls.rebase_merge_pull_request"}}</div>
354+
{{end}}
355+
{{if $prUnit.PullRequestsConfig.AllowRebaseMerge}}
356+
<div class="item{{if eq .MergeStyle "rebase-merge"}} active selected{{end}}" data-do="rebase-merge">{{$.i18n.Tr "repo.pulls.rebase_merge_commit_pull_request"}}</div>
357+
{{end}}
358+
{{if $prUnit.PullRequestsConfig.AllowSquash}}
359+
<div class="item{{if eq .MergeStyle "squash"}} active selected{{end}}" data-do="squash">{{$.i18n.Tr "repo.pulls.squash_merge_pull_request"}}</div>
360+
{{end}}
361+
</div>
360362
</div>
361-
</div>
362-
{{end}}
363+
{{end}}
364+
</div>
365+
</div>
366+
<div class="dib ml-3">{{$.i18n.Tr "repo.pulls.merge_instruction_hint" | Safe}}</div>
367+
<div class="instruct" style="display:none">
368+
<div class="ui divider"></div>
369+
<div><h3 class="di">{{$.i18n.Tr "step1"}} </h3>{{$.i18n.Tr "repo.pulls.merge_instruction_step1_desc"}}</div>
370+
<div class="ui secondary segment">
371+
<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>
372+
<div>git pull {{if ne .Issue.PullRequest.HeadRepo.ID .Issue.PullRequest.BaseRepo.ID}}{{.Issue.PullRequest.HeadRepo.HTMLURL}}{{else}}origin{{end}} {{.Issue.PullRequest.HeadBranch}}</div>
373+
</div>
374+
<div><h3 class="di">{{$.i18n.Tr "step2"}} </h3>{{$.i18n.Tr "repo.pulls.merge_instruction_step2_desc"}}</div>
375+
<div class="ui secondary segment">
376+
<div>git checkout {{.Issue.PullRequest.BaseBranch}}</div>
377+
<div>git merge --no-ff {{if ne .Issue.PullRequest.HeadRepo.ID .Issue.PullRequest.BaseRepo.ID}}{{.Issue.PullRequest.HeadRepo.OwnerName}}-{{end}}{{.Issue.PullRequest.HeadBranch}}</div>
378+
<div>git push origin {{.Issue.PullRequest.BaseBranch}}</div>
379+
</div>
363380
</div>
364381
{{else}}
365382
<div class="ui divider"></div>

templates/user/dashboard/repolist.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
<span class="sr-only">{{.i18n.Tr "new_repo"}}</span>
3434
</a>
3535
</h4>
36-
<div class="ui attached secondary segment repos-search">
36+
<div class="ui attached segment repos-search">
3737
<div class="ui fluid right action left icon input" :class="{loading: isLoading}">
3838
<input @input="searchRepos(reposFilter)" v-model="searchQuery" ref="search" placeholder="{{.i18n.Tr "home.search_repos"}}">
3939
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>

web_src/js/index.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1201,6 +1201,12 @@ async function initRepository() {
12011201
}
12021202
}
12031203

1204+
function initPullRequestMergeInstruction() {
1205+
$('.show-instruction').on('click', () => {
1206+
$('.instruct').toggle();
1207+
});
1208+
}
1209+
12041210
function initPullRequestReview() {
12051211
if (window.location.hash && window.location.hash.startsWith('#issuecomment-')) {
12061212
const commentDiv = $(window.location.hash);
@@ -2526,6 +2532,7 @@ $(document).ready(async () => {
25262532
initContextPopups();
25272533
initTableSort();
25282534
initNotificationsTable();
2535+
initPullRequestMergeInstruction();
25292536

25302537
const routes = {
25312538
'div.user.settings': initUserSettings,

web_src/less/_base.less

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,8 @@
9999
--color-markdown-code-block: #00000008;
100100
--color-button: #ffffff;
101101
--color-code-bg: #ffffff;
102-
--color-shadow: #00000024;
102+
--color-markdown-code-block: #00000010;
103+
--color-secondary-bg: #f4f4f4;
103104
}
104105

105106
:root:lang(ja) {
@@ -1691,6 +1692,11 @@ a.ui.basic.label:hover {
16911692
border-color: var(--color-secondary);
16921693
}
16931694

1695+
.ui.secondary.segment {
1696+
background: var(--color-secondary-bg);
1697+
color: var(--color-text-light);
1698+
}
1699+
16941700
.ui.attached.header {
16951701
position: relative;
16961702
background: var(--color-box-header);

web_src/less/helpers.less

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
.df { display: flex !important; }
2+
.di { display: inline !important; }
23
.dif { display: inline-flex !important; }
4+
.dib { display: inline-block !important; }
35
.ac { align-items: center !important; }
46
.tc { text-align: center !important; }
57
.jc { justify-content: center !important; }

web_src/less/themes/theme-arc-green.less

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@
9595
--color-button: #353846;
9696
--color-code-bg: #2a2e3a;
9797
--color-shadow: #00000060;
98+
--color-secondary-bg: #2a2e3a;
9899
}
99100

100101
/* LineTableTD */
@@ -827,10 +828,6 @@ td.blob-hunk {
827828
color: #dbdbdb;
828829
}
829830

830-
.ui.secondary.segment {
831-
background: #353945;
832-
}
833-
834831
.ui.attached.info.message,
835832
.ui.info.message {
836833
box-shadow: 0 0 0 1px #4b5e71 inset, 0 0 0 0 transparent;

0 commit comments

Comments
 (0)