Backport #26352 Now, you don't need to be a git expert anymore to know what these numbers mean. ## Before ![grafik](https://github.com/go-gitea/gitea/assets/51889757/9a964bf6-10fd-40a6-aeb2-ac8f437f8c32) ## After ![grafik](https://github.com/go-gitea/gitea/assets/51889757/84573cb9-55b6-4dde-9866-95f71b657554) or when the mode actually changed: ![grafik](https://github.com/go-gitea/gitea/assets/51889757/0f327538-ebdc-40e7-8c99-f9e21b67f638)tags/v1.20.3
@@ -3474,3 +3474,12 @@ need_approval_desc = Need approval to run workflows for fork pull request. | |||
type-1.display_name = Individual Project | |||
type-2.display_name = Repository Project | |||
type-3.display_name = Organization Project | |||
[git.filemode] | |||
changed_filemode = %[1]s → %[2]s | |||
# Ordered by git filemode value, ascending. E.g. directory has "040000", normal file has "100644", … | |||
directory = Directory | |||
normal_file = Normal file | |||
executable_file = Executable file | |||
symbolic_link = Symbolic link | |||
submodule = Submodule |
@@ -427,6 +427,23 @@ func (diffFile *DiffFile) ShouldBeHidden() bool { | |||
return diffFile.IsGenerated || diffFile.IsViewed | |||
} | |||
func (diffFile *DiffFile) ModeTranslationKey(mode string) string { | |||
switch mode { | |||
case "040000": | |||
return "git.filemode.directory" | |||
case "100644": | |||
return "git.filemode.normal_file" | |||
case "100755": | |||
return "git.filemode.executable_file" | |||
case "120000": | |||
return "git.filemode.symbolic_link" | |||
case "160000": | |||
return "git.filemode.submodule" | |||
default: | |||
return mode | |||
} | |||
} | |||
func getCommitFileLineCount(commit *git.Commit, filePath string) int { | |||
blob, err := commit.GetBlobByPath(filePath) | |||
if err != nil { |
@@ -110,9 +110,11 @@ | |||
<span class="ui label">{{$.locale.Tr "repo.diff.vendored"}}</span> | |||
{{end}} | |||
{{if and $file.Mode $file.OldMode}} | |||
<span class="gt-ml-4 gt-mono">{{$file.OldMode}} → {{$file.Mode}}</span> | |||
{{$old := $.locale.Tr ($file.ModeTranslationKey $file.OldMode)}} | |||
{{$new := $.locale.Tr ($file.ModeTranslationKey $file.Mode)}} | |||
<span class="gt-ml-4 gt-mono">{{$.locale.Tr "git.filemode.changed_filemode" $old $new}}</span> | |||
{{else if $file.Mode}} | |||
<span class="gt-ml-4 gt-mono">{{$file.Mode}}</span> | |||
<span class="gt-ml-4 gt-mono">{{$.locale.Tr ($file.ModeTranslationKey $file.Mode)}}</span> | |||
{{end}} | |||
</div> | |||
<div class="diff-file-header-actions gt-df gt-ac gt-gap-2 gt-fw"> |