[#7913] support new HEAD syntax from git 2.4+ log output
diff --git a/ForgeGit/forgegit/model/git_repo.py b/ForgeGit/forgegit/model/git_repo.py
index 480631b..a8d2e5a 100644
--- a/ForgeGit/forgegit/model/git_repo.py
+++ b/ForgeGit/forgegit/model/git_repo.py
@@ -440,12 +440,16 @@
                 ]
                 if commit_lines:
                     hexsha, decoration = commit_lines[0].split('\x00')
-                    refs = decoration.strip(' ()').split(
-                        ', ') if decoration else []
+                    if decoration:
+                        # "->" replacement is because git 2.4 introduced "HEAD -> master" syntax
+                        refs = decoration.strip(' ()').replace(' -> ', ', ').split(', ')
+                    else:
+                        refs = []
                     tag_prefix = 'tag: '  # introduced in git 1.8.3
                     for i, ref in enumerate(refs):
                         if ref.startswith(tag_prefix):
                             refs[i] = ref[len(tag_prefix):]
+                    refs.sort()
                     renamed = {}
                     # merge commits don't have any --name-status output
                     if len(commit_lines) > 1: