diff --git a/CHANGELOG b/CHANGELOG
index 84bdf78e980a36c64042e702cdf496c32dbde8d9..ef0f164264ebd42d276c4ba9eba5a144b658ce81 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -48,6 +48,7 @@ v 7.11.0 (unreleased)
   - Add footnotes support to Markdown (Guillaume Delbergue)
   - Add current_sign_in_at to UserFull REST api.
   - Make Sidekiq MemoryKiller shutdown signal configurable
+  - Order commit comments chronologically in API.
 
 v 7.10.2
   - Fix CI links on MR page
diff --git a/lib/api/commits.rb b/lib/api/commits.rb
index 23270b1c0f46529a1482eea5507009a5c9757870..f4efb651eb6666d4ee8e3822423b9bbd3663407b 100644
--- a/lib/api/commits.rb
+++ b/lib/api/commits.rb
@@ -62,7 +62,7 @@ module API
         sha = params[:sha]
         commit = user_project.commit(sha)
         not_found! 'Commit' unless commit
-        notes = Note.where(commit_id: commit.id)
+        notes = Note.where(commit_id: commit.id).order(:created_at)
         present paginate(notes), with: Entities::CommitNote
       end
 
diff --git a/spec/requests/api/commits_spec.rb b/spec/requests/api/commits_spec.rb
index 9ea60e1a4adb597c230dd5148df8a02dc93737a0..a1c248c636eb4fa699777f8accd71e6fb84a30f2 100644
--- a/spec/requests/api/commits_spec.rb
+++ b/spec/requests/api/commits_spec.rb
@@ -9,6 +9,7 @@ describe API::API, api: true  do
   let!(:master) { create(:project_member, user: user, project: project, access_level: ProjectMember::MASTER) }
   let!(:guest) { create(:project_member, user: user2, project: project, access_level: ProjectMember::GUEST) }
   let!(:note) { create(:note_on_commit, author: user, project: project, commit_id: project.repository.commit.id, note: 'a comment on a commit') }
+  let!(:another_note) { create(:note_on_commit, author: user, project: project, commit_id: project.repository.commit.id, note: 'another comment on a commit') }
 
   before { project.team << [user, :reporter] }
 
@@ -89,7 +90,7 @@ describe API::API, api: true  do
         get api("/projects/#{project.id}/repository/commits/#{project.repository.commit.id}/comments", user)
         expect(response.status).to eq(200)
         expect(json_response).to be_an Array
-        expect(json_response.length).to eq(1)
+        expect(json_response.length).to eq(2)
         expect(json_response.first['note']).to eq('a comment on a commit')
         expect(json_response.first['author']['id']).to eq(user.id)
       end