end
def commits
- @commits = @project.repo.commits_between(@merge_request.target_branch, @merge_request.source_branch).map {|c| Commit.new(c)}
+ @commits = @project.repo.
+ commits_between(@merge_request.target_branch, @merge_request.source_branch).
+ map {|c| Commit.new(c)}.
+ sort_by(&:created_at).
+ reverse
end
def diffs
next if line.match(/^\-\-\- a/)
next if line.match(/^\+\+\+ b/)
- full_line = html_escape(line.gsub(/\n/, ''))
+ full_line = html_escape(line.gsub(/\n/, '')).force_encoding("UTF-8")
if line.match(/^@@ -/)
next if line_old == 1 && line_new == 1
.file_stats
= render "commits/diff_head", :diffs => diffs
-
+
- diffs.each_with_index do |diff, i|
- next if diff.diff.empty?
- file = (@commit.tree / diff.b_path)
%br/
.diff_file_content
- if file.text?
- = render :partial => "commits/text_file", :locals => { :diff => diff, :index => i }
+ = render "commits/text_file", :diff => diff, :index => i
- elsif file.image?
.diff_file_content_image
%img{:src => "data:#{file.mime_type};base64,#{Base64.encode64(file.data)}"}