Skip to content

Support remote git repository as template source #1401

@bilelomrani1

Description

@bilelomrani1

Feature Request

Description

Allow template_dir to reference a remote git repository instead of only local filesystem paths.

Use cases

  • Share changelog templates across multiple projects without copy-paste
  • Enable an ecosystem of reusable changelog template repositories
  • Simplify CI workflows by removing manual template download steps

Possible implementation

Support a git URL syntax:

[tool.semantic_release.changelog]
template_dir = "git+https://github.com/user/changelog-templates.git@v1.0.0#templates"

Or explicit configuration:

[tool.semantic_release.changelog.template_source]
repo = "https://github.com/user/changelog-templates.git"
ref = "v1.0.0"  # tag, branch, or commit
path = "templates"  # subdirectory within repo

Using fsspec with its git backend would abstract the storage layer, and support private repositories.

Alternative solutions

  • Download templates in CI before running semantic-release: Works but adds boilerplate to every project's workflow
  • Git submodules: Adds unnecessary complexity for simple template sharing

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureA new feature or a feature requesthelp-wantedExtra attention is required

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions