Thank you for your interest in contributing to the development of CONQUEST. The current roadmap can be seen on the Conquest GitHub issues page. The features and developments planned are organised through milestones. If you want to submit a new issue please use one of the templates, and provide as much information as possible, including input files needed to reproduce any unusual or incorrect behaviour. We would also be happy for you to fork the repository to fix a bug, and then submit a pull request.
Please note that, while we will endeavour to fix any bugs, and are happy to receive suggestions of new features, we are not able to guarantee any level of support.
We welcome new developers. If you are interested in contributing a new feature, please suggest it via the issues page. If you are interested in contributing to an existing feature, please contact the development team.
We follow a
git branching workflow
(also described
here,
though we do not use the gitflow
tool). You may find the
figures in these references very helpful in understanding the overall
workflow. The key idea is that all developments should be made on a branch
created from the develop
branch. The overall approach is this:
- We consider the GitHub
repository to be the
central repository (though as Git is distributed, there is no such
thing as an actual central repository). We designate this
repository as
origin
. - The
origin/master
branch is the main branch which always represents a production-ready state. - The
origin/develop
branch is where developments which have been delivered for the next release reside. - Feature branches (named
f-FeatureName
) branch offdevelop
and are used to develop new features or functionality for a future release (possibly unspecified). They may reside on a developer's local repository only in the early stages, but will need to be pushed for collaboration and discussion. They will merge intodevelop
. - Release branches (named
release-Release
) branch fromdevelop
and merge into bothmaster
anddevelop
. Release branches allow new developments to proceed ondevelop
while final changes and bug fixes are made to the release. - Hotfix branches (named
hotfix-Version
) branch offmaster
and merge into bothmaster
anddevelop
. They are only used for urgent fixes to an existing release.