Contributing
When contributing to this repository, please first discuss the change you wish to make via issue, email, or any other method with the owners of this repository before making a change.
Please note we have a code of conduct, please follow it in all your interactions with the project.
Pull Request Process
- Check that your feature branch is properly named, it starts with «fix/» or «feature/», then has ticket number, then has a short lowercase description. E.g. for [LLK-1779] «Contributing guidelines» such name should be «feature/LLK-1779_contributing_guidelines».
- Name your PR like the pattern in «[LLK-1779] Contributing guidelines», that is the ticket number in «[]», and a ticket name.
- Ensure any install or build dependencies are removed before the end of the layer when doing a build.
- Update the «README.md» with details of changes to the interface, this includes new environment variables, exposed ports, useful file locations, and container parameters.
- Once all outstanding comments and checklist items have been addressed, your contribution will be merged!
Checklists for contributions
- The branch and PR names contain a related JIRA ticket code and name
- README.md reflect feature changes
- I have covered my feature with unit tests
- I have updated CHANGELOG.md
Versioning
This project adheres to Semantic Versioning with an alpha project stage flavor. We’ve started from v0.1.0.
-
update the changelog by
sh git-chglog -o CHANGELOG.md
-
create a git tag with a message equal to PR like this «[LLK-1779] Contributing guidelines»
-
commit & push changes together with the new git tag
Changelog
The format is based on Keep a Changelog.
Manual Edit
- [make changelog] install git-chglog tool to «./bin/git-chglog»
- suppose current version is 0.18.0 and the last tag is v0.18.0, next one would be 0.19.0
- produce a generated Changelog for next tag v0.19.0
git-chglog --next-tag v0.19.0
-
insert new content to the CHANGELOG.md
-
to the top goes the content of changes
-
to the bottom, version links are recorded
-
insert new Markdown link to JIRA tickets like «[LLK-1779]: https://crm24.scanner.travel/workgroups/group/36/tasks/task/view/1779/«
Semantic Commits
To generate changelog, commits must have semantic and must follow conventional specs below:
- feat
- fix
- perf
- refactor
- test
- docs
- «feat:» for new features
- «fix:» for bug fixes
- «perf»: for performance improvements
- «refactor:» for code refactoring
- «test:» for tests
- «docs:» for documentation and examples
- «chore:» for chores stuff
The «chore» prefix skipped during changelog generation. It can be used for «chore: update changelog» commit message by example.
https://github.com/git-chglog/git-chglog — Субпрограмма для создания и обновления changelog
git-chglog —next-tag v1.0.3 -o CHANGELOG.md — так обновляется changelog