{{#if scope }}
  {{~#if showScope }}**{{ scope }}:** {{/if}}
{{~/if}}

{{~#if subject }}
  {{~ subject }}
{{~else}}
  {{~ header }}
{{~/if}}

{{~#if hash }} {{#if @root.linkReferences ~}}
  ([{{ shortHash }}]({{> commitUrl root=@root }}))
{{~else}}
  {{~ shortHash }}
{{~/if}}{{~/if}}
