##// END OF EJS Templates
git: use force fetch and update for target ref. This solves a case...
git: use force fetch and update for target ref. This solves a case when in PRs a target is force updated and is out of sync. Before we used a pull which --ff-only fails obviosly because two are out of sync. This change uses new logic that resets the target branch according to the source target branch allowing smooth merge simulation.

File last commit:

r2105:4ad1a937 default
r2784:e8c62649 default
Show More
pullrequest_merge_checks.mako
78 lines | 3.7 KiB | application/x-mako | MakoHtmlLexer
<div class="pull-request-wrap">
% if c.pr_merge_possible:
<h2 class="merge-status">
<span class="merge-icon success"><i class="icon-ok"></i></span>
${_('This pull request can be merged automatically.')}
</h2>
% else:
<h2 class="merge-status">
<span class="merge-icon warning"><i class="icon-false"></i></span>
${_('Merge is not currently possible because of below failed checks.')}
</h2>
% endif
% if c.pr_merge_errors.items():
<ul>
% for pr_check_key, pr_check_details in c.pr_merge_errors.items():
<% pr_check_type = pr_check_details['error_type'] %>
<li>
<span class="merge-message ${pr_check_type}" data-role="merge-message">
- ${pr_check_details['message']}
% if pr_check_key == 'todo':
% for co in pr_check_details['details']:
<a class="permalink" href="#comment-${co.comment_id}" onclick="Rhodecode.comments.scrollToComment($('#comment-${co.comment_id}'), 0, ${h.json.dumps(co.outdated)})"> #${co.comment_id}</a>${'' if loop.last else ','}
% endfor
% endif
</span>
</li>
% endfor
</ul>
% endif
<div class="pull-request-merge-actions">
% if c.allowed_to_merge:
## Merge info, show only if all errors are taken care of
% if not c.pr_merge_errors and c.pr_merge_info:
<div class="pull-request-merge-info">
<ul>
% for pr_merge_key, pr_merge_details in c.pr_merge_info.items():
<li>
- ${pr_merge_details['message']}
</li>
% endfor
</ul>
</div>
% endif
<div>
${h.secure_form(h.route_path('pullrequest_merge', repo_name=c.repo_name, pull_request_id=c.pull_request.pull_request_id), id='merge_pull_request_form', request=request)}
<% merge_disabled = ' disabled' if c.pr_merge_possible is False else '' %>
<a class="btn" href="#" onclick="refreshMergeChecks(); return false;">${_('refresh checks')}</a>
<input type="submit" id="merge_pull_request" value="${_('Merge Pull Request')}" class="btn${merge_disabled}"${merge_disabled}>
${h.end_form()}
</div>
% elif c.rhodecode_user.username != h.DEFAULT_USER:
<a class="btn" href="#" onclick="refreshMergeChecks(); return false;">${_('refresh checks')}</a>
<input type="submit" value="${_('Merge Pull Request')}" class="btn disabled" disabled="disabled" title="${_('You are not allowed to merge this pull request.')}">
% else:
<input type="submit" value="${_('Login to Merge this Pull Request')}" class="btn disabled" disabled="disabled">
% endif
</div>
% if c.allowed_to_close:
## close PR action, injected later next to COMMENT button
<div id="close-pull-request-action" style="display: none">
% if c.pull_request_review_status == c.REVIEW_STATUS_APPROVED:
<a class="btn btn-approved-status" href="#close-as-approved" onclick="closePullRequest('${c.REVIEW_STATUS_APPROVED}'); return false;">
${_('Close with status {}').format(h.commit_status_lbl(c.REVIEW_STATUS_APPROVED))}
</a>
% else:
<a class="btn btn-rejected-status" href="#close-as-rejected" onclick="closePullRequest('${c.REVIEW_STATUS_REJECTED}'); return false;">
${_('Close with status {}').format(h.commit_status_lbl(c.REVIEW_STATUS_REJECTED))}
</a>
% endif
</div>
% endif
</div>