summaryrefslogtreecommitdiff
path: root/internal/generator/compare.go
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2026-02-01 00:14:55 -0700
committermo khan <mo@mokhan.ca>2026-02-01 00:14:55 -0700
commit22172c0c7b8be48ae269c06e7555781374d2d0a2 (patch)
tree5729113612082f7b840c897723a78eeeb9ba0b4a /internal/generator/compare.go
parentb7c1e89f12e06c478c13b255da3df366736edf02 (diff)
feat: add compare between latest branch and HEADHEADmain
Diffstat (limited to 'internal/generator/compare.go')
-rw-r--r--internal/generator/compare.go13
1 files changed, 12 insertions, 1 deletions
diff --git a/internal/generator/compare.go b/internal/generator/compare.go
index ec47e08..c2c3a15 100644
--- a/internal/generator/compare.go
+++ b/internal/generator/compare.go
@@ -24,6 +24,13 @@ func GenerateComparePages(tags []git.Tag, branches []git.Ref, params Params) err
return err
}
+ if len(tags) > 0 {
+ latestTag := tags[0].Name
+ if err := generateComparePage(latestTag, "HEAD", params); err != nil {
+ Echo(fmt.Sprintf(" warning: compare %s...HEAD failed: %v", latestTag, err))
+ }
+ }
+
if len(tags) > 1 {
for i := 0; i < len(tags)-1; i++ {
base := tags[i+1].Name
@@ -152,7 +159,11 @@ func generateComparePage(base, head string, params Params) error {
commits[i].Href = filepath.ToSlash(filepath.Join("../../commit", commits[i].Hash+".html"))
}
- dirName := baseRef.DirName() + "..." + headRef.DirName()
+ headDirName := headRef.DirName()
+ if head == "HEAD" {
+ headDirName = "HEAD"
+ }
+ dirName := baseRef.DirName() + "..." + headDirName
outDir := filepath.Join(params.OutputDir, "compare", dirName)
if err := os.MkdirAll(outDir, 0o755); err != nil {
return err