MBDyn Developers Guidelines
This guidelines are also reported in the CONTRIBUTING.md file in the repository root
All contributions from external developers however are welcome, of course. As the project's maintainers, we only ask interested coders to follow the simple steps here presented.
Since the main repository was moved to Git, we switched to the branching model described here, so if you are a new developer, please read the page carefully prior to commiting and pushing changes.
Guidelines for external developers
As a general rule, before starting to write code, consider opening an issue to start a discussion with other developers.
Developers that would like to contribute to MBDyn but are not in the project
regulars must: fork this Gitlab repository checkout a fresh branch from the
commit and push to your branch in their forked repository issue a merge request into the `develop' branch of the main repository
UPDATE: since the MBDyn repository was moved to the Politecnico di Milano servers, forking has been disabled. Interested external developers must, therefore, follow the same guidelines of the internal developers. As stated above, opening an issue before writing (and, more importantly, pushing) code is highly recommended.
Guidelines for internal developers
Developers that would like to be included among the regulars in MBDyn must have either a Google or a Polimi account and must:
- request a "developer" access permission to the MBDyn administrators, Pierangelo Masarati in primis
- clone this Gitlab repository
- checkout a fresh branch from the
- make sure that your contribution follows the code development model indicated above before pushing!
- whenever you feel that your contribution would benefit from discussion with other developers, issue a merge request instead of directly pushing to the main repository
Please keep in mind that direct push on the
develop branches is allowed only to MBDyn maintainers. Therefore, regular maintainers must always issue merge requests if they'd like for their code to be included in the two core branches.