This projects follows the Gitflow workflow. When contributing, please discuss the change you wish to make via Issues, email, or any other method with the maintainers of this repository before raising a Pull Request.
This project uses gitchangelog to automatically generate the content of CHANGELOG.md. So, it is important to follow a convention on how to format your git commit messages. In general, all commit messages should follow the structure below:
<subject>
<BLANK LINE>
<body><subject> should follow the standard gitchangelog convention below. See gitchangelog.rc example on GitHub for more information.
-
ACTION: [AUDIENCE:] SUBJ_MSG [!TAG ...] -
ACTIONindicates WHAT the change is about.chgis for refactor, small improvement, cosmetic changes, etcfixis for bug fixesnewis for new features, big improvement
-
AUDIENCEindicates WHO is concerned by the change.devis for developers (API changes, refactoring...)useris for final users (UI changes)pkgis for packagers (packaging changes)testis for testers (test only related changes)docis for tech writers (doc only changes)
-
SUBJ_MSGis the subject itself. -
TAGsare for commit filtering and are preceded with!. Commonly used tags are:refactoris obviously for refactoring code onlyminoris for a very meaningless change (a typo, adding a comment)cosmeticis for cosmetic driven change (re-indentation, etc)wipis for partial functionality.
-
EXAMPLES:new: usr: support of bazaar implemented.chg: re-indent some lines. !cosmeticnew: dev: update code to be compatible with killer lib ver1.2.3.fix: pkg: update year of license coverage.new: test: add tests around usability of feature Foo.fix: typo in spelling. !minor
-
Clone the repo to your workstation:
git clone https://github.com/undp/tf-modules.git tf-modules
-
Switch to the
developbranch:git checkout develop
-
Create a new feature branch named
feature/fooBarfrom thedevelopbranch:git checkout -b feature/fooBar
-
Introduce your modifications locally. Don't forget about corresponding tests!
-
Commit your changes. Ensure your commit message follows the formatting convention described above.
git commit -am "new: usr: add fooBar feature. (close #123)" -
Push the
feature/fooBarbranch to the remote origingit push origin feature/fooBar
-
Create a new Pull Request for the repo.
-
You may merge the Pull Request in once you have the sign-off from a repo owner. Or, if you do not have permission to merge, you may request the reviewer to merge it for you.