mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-23 08:47:42 -05:00
ed64f1c2b8
Closes #26329 This PR adds the ability to ignore revisions specified in the `.git-blame-ignore-revs` file in the root of the repository. ![grafik](https://github.com/go-gitea/gitea/assets/1666336/9e91be0c-6e9c-431c-bbe9-5f80154251c8) The banner is displayed in this case. I intentionally did not add a UI way to bypass the ignore file (same behaviour as Github) but you can add `?bypass-blame-ignore=true` to the url manually. --------- Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
80 lines
3.3 KiB
Handlebars
80 lines
3.3 KiB
Handlebars
{{if or .UsesIgnoreRevs .FaultyIgnoreRevsFile}}
|
|
{{$revsFileLink := URLJoin .RepoLink "src" .BranchNameSubURL "/.git-blame-ignore-revs"}}
|
|
{{if .UsesIgnoreRevs}}
|
|
<div class="ui info message">
|
|
<p>{{.locale.Tr "repo.blame.ignore_revs" $revsFileLink (print $revsFileLink "?bypass-blame-ignore=true") | Str2html}}</p>
|
|
</div>
|
|
{{else}}
|
|
<div class="ui error message">
|
|
<p>{{.locale.Tr "repo.blame.ignore_revs.failed" $revsFileLink | Str2html}}</p>
|
|
</div>
|
|
{{end}}
|
|
{{end}}
|
|
<div class="{{TabSizeClass .Editorconfig .FileName}} non-diff-file-content">
|
|
<h4 class="file-header ui top attached header gt-df gt-ac gt-sb gt-fw">
|
|
<div class="file-header-left gt-df gt-ac gt-py-3 gt-pr-4">
|
|
{{template "repo/file_info" .}}
|
|
</div>
|
|
<div class="file-header-right file-actions gt-df gt-ac gt-fw">
|
|
<div class="ui buttons">
|
|
<a class="ui tiny button" href="{{$.RawFileLink}}">{{.locale.Tr "repo.file_raw"}}</a>
|
|
{{if not .IsViewCommit}}
|
|
<a class="ui tiny button" href="{{.RepoLink}}/src/commit/{{.CommitID | PathEscape}}/{{.TreePath | PathEscapeSegments}}">{{.locale.Tr "repo.file_permalink"}}</a>
|
|
{{end}}
|
|
<a class="ui tiny button" href="{{.RepoLink}}/src/{{.BranchNameSubURL}}/{{.TreePath | PathEscapeSegments}}">{{.locale.Tr "repo.normal_view"}}</a>
|
|
<a class="ui tiny button" href="{{.RepoLink}}/commits/{{.BranchNameSubURL}}/{{.TreePath | PathEscapeSegments}}">{{.locale.Tr "repo.file_history"}}</a>
|
|
<button class="ui tiny button unescape-button">{{.locale.Tr "repo.unescape_control_characters"}}</button>
|
|
<button class="ui tiny button escape-button gt-hidden">{{.locale.Tr "repo.escape_control_characters"}}</button>
|
|
</div>
|
|
</div>
|
|
</h4>
|
|
<div class="ui attached table unstackable segment">
|
|
<div class="file-view code-view unicode-escaped">
|
|
<table>
|
|
<tbody>
|
|
{{range $row := .BlameRows}}
|
|
<tr class="{{if and (gt $.CommitCnt 1) ($row.CommitMessage)}}top-line-blame{{end}}">
|
|
<td class="lines-commit">
|
|
<div class="blame-info">
|
|
<div class="blame-data">
|
|
<div class="blame-avatar">
|
|
{{$row.Avatar}}
|
|
</div>
|
|
<div class="blame-message">
|
|
<a href="{{$row.CommitURL}}" title="{{$row.CommitMessage}}">
|
|
{{$row.CommitMessage}}
|
|
</a>
|
|
</div>
|
|
<div class="blame-time">
|
|
{{$row.CommitSince}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</td>
|
|
<td class="lines-blame-btn">
|
|
{{if $row.PreviousSha}}
|
|
<a href="{{$row.PreviousShaURL}}" data-tooltip-content='{{$.locale.Tr "repo.blame_prior"}}'>
|
|
{{svg "octicon-versions"}}
|
|
</a>
|
|
{{end}}
|
|
</td>
|
|
<td class="lines-num">
|
|
<span id="L{{$row.RowNumber}}" data-line-number="{{$row.RowNumber}}"></span>
|
|
</td>
|
|
{{if $.EscapeStatus.Escaped}}
|
|
<td class="lines-escape">
|
|
{{if $row.EscapeStatus.Escaped}}
|
|
<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $row "locale" $.locale}}"></button>
|
|
{{end}}
|
|
</td>
|
|
{{end}}
|
|
<td rel="L{{$row.RowNumber}}" class="lines-code blame-code chroma">
|
|
<code class="code-inner gt-pl-3">{{$row.Code}}</code>
|
|
</td>
|
|
</tr>
|
|
{{end}}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|