diff --git a/README.md b/README.md
index 9501c210..4c31cc83 100644
--- a/README.md
+++ b/README.md
@@ -400,6 +400,7 @@ The basic templates are as follows.
```markdown
{{ if .Versions -}}
+
## [Unreleased]
{{ if .Unreleased.CommitGroups -}}
@@ -413,6 +414,7 @@ The basic templates are as follows.
{{ end -}}
{{ range .Versions }}
+
## {{ if .Tag.Previous }}[{{ .Tag.Name }}]{{ else }}{{ .Tag.Name }}{{ end }} - {{ datetime "2006-01-02" .Tag.Date }}
{{ range .CommitGroups -}}
### {{ .Title }}
diff --git a/cmd/git-chglog/custom_template_builder.go b/cmd/git-chglog/custom_template_builder.go
index 04de5f97..d499745f 100644
--- a/cmd/git-chglog/custom_template_builder.go
+++ b/cmd/git-chglog/custom_template_builder.go
@@ -49,10 +49,10 @@ func (*customTemplateBuilderImpl) versionHeader(style, template string) string {
// parts
switch style {
case styleGitHub, styleGitLab:
- tpl = "\n"
+ tpl = templateTagNameAnchor
tagName = "{{ if .Tag.Previous }}[{{ .Tag.Name }}]({{ $.Info.RepositoryURL }}/compare/{{ .Tag.Previous.Name }}...{{ .Tag.Name }}){{ else }}{{ .Tag.Name }}{{ end }}"
case styleBitbucket:
- tpl = "\n"
+ tpl = templateTagNameAnchor
tagName = "{{ if .Tag.Previous }}[{{ .Tag.Name }}]({{ $.Info.RepositoryURL }}/compare/{{ .Tag.Name }}..{{ .Tag.Previous.Name }}){{ else }}{{ .Tag.Name }}{{ end }}"
}
diff --git a/cmd/git-chglog/kac_template_builder.go b/cmd/git-chglog/kac_template_builder.go
index e47d6b03..23b44fce 100644
--- a/cmd/git-chglog/kac_template_builder.go
+++ b/cmd/git-chglog/kac_template_builder.go
@@ -46,36 +46,40 @@ func (t *kacTemplateBuilderImpl) Build(ans *Answer) (string, error) {
func (t *kacTemplateBuilderImpl) unreleased(style, format string) string {
var (
+ id = ""
title = "Unreleased"
commits = t.commits(".Unreleased.CommitGroups", format)
)
switch style {
case styleGitHub, styleGitLab, styleBitbucket:
+ id = "\n"
title = fmt.Sprintf("[%s]", title)
}
return fmt.Sprintf(`{{ if .Versions -}}
-## %s
+%s## %s
{{ if .Unreleased.CommitGroups -}}
%s{{ end -}}
{{ end -}}
-`, title, commits)
+`, id, title, commits)
}
func (t *kacTemplateBuilderImpl) versionHeader(style string) string {
var (
+ id = ""
tagName = "{{ .Tag.Name }}"
date = "{{ datetime \"2006-01-02\" .Tag.Date }}"
)
switch style {
case styleGitHub, styleGitLab, styleBitbucket:
+ id = templateTagNameAnchor
tagName = "{{ if .Tag.Previous }}[{{ .Tag.Name }}]{{ else }}{{ .Tag.Name }}{{ end }}"
}
- return fmt.Sprintf("## %s - %s\n", tagName, date)
+ return fmt.Sprintf("%s## %s - %s\n", id, tagName, date)
}
func (t *kacTemplateBuilderImpl) commits(commitGroups, format string) string {
diff --git a/cmd/git-chglog/kac_template_builder_test.go b/cmd/git-chglog/kac_template_builder_test.go
index 7e5ce980..09753909 100644
--- a/cmd/git-chglog/kac_template_builder_test.go
+++ b/cmd/git-chglog/kac_template_builder_test.go
@@ -20,6 +20,7 @@ func TestKACTemplateBuilderDefault(t *testing.T) {
assert.Nil(err)
assert.Equal(`{{ if .Versions -}}
+
## [Unreleased]
{{ if .Unreleased.CommitGroups -}}
@@ -33,6 +34,7 @@ func TestKACTemplateBuilderDefault(t *testing.T) {
{{ end -}}
{{ range .Versions }}
+
## {{ if .Tag.Previous }}[{{ .Tag.Name }}]{{ else }}{{ .Tag.Name }}{{ end }} - {{ datetime "2006-01-02" .Tag.Date }}
{{ range .CommitGroups -}}
### {{ .Title }}
diff --git a/cmd/git-chglog/template_builder.go b/cmd/git-chglog/template_builder.go
index 963aab7c..962fc563 100644
--- a/cmd/git-chglog/template_builder.go
+++ b/cmd/git-chglog/template_builder.go
@@ -1,5 +1,7 @@
package main
+const templateTagNameAnchor = "\n"
+
// TemplateBuilder ...
type TemplateBuilder interface {
Builder