osbdr / pipeline-django-semver-demo

Demo Repository with Sematic Versioning applied in a Django Python example, and autodeployment of releases.
MIT License
5 stars 1 forks source link

Include explanation how to use this repository as a "template repository" (starting point) and alternatives #4

Open dkdndes opened 4 years ago

dkdndes commented 4 years ago

Github Template Directories

Github allows us to define a GitHub repository as a template repository. When applied to the target repository, independent of its name is a 100% copy of the original template directory.

Alternatives

An alternative is a tool called "$ cookiecutter".

Cookiecutter uses a template language (like jinja2), and a GitHub repository (not a GitHub template) to describe project templates. The difference is the capability to include switches in a "call and answer" dialog.

The switches allow then options than within the dialog, and decision trees to be applied then the target repository is built.

Examples could be two different target database systems, or to ex- or include a feature within the target repository.

Cookiecutter does not care about the language to be used within the repository. Example cookiecutter templates do exist for multiple languages or features of language frameworks.

j0nm1 commented 4 years ago

I think copier is even better than cookiecutter. With copier you can update existing repositories as well. See here: https://github.com/osbdr/copier-templates