This page discusses the workflow when developing with AF3. It is oriented at the "git flow" workflow and requires a completed developer installation (see Developer Installation with Eclipse Installer (Oomph) - Linux and Windows User).
The workflow below depicts the whole process from creating an issue until merging and closing it.
AF3 uses the version control system git where the server component is provided by gitlab. The repositories are hosted here: https://git.fortiss.org/af3
The repository is structured into kernel plugins, official af3 pugins (plugins included in the version downloadable from the website), the AF3-RCP plugins, and a repository for configuration and setup files. Besides these repositories, there also exist repositories which provide parts of the configuration for the continuous integration using Jenkins. Moreover, several repositories exist that contain unofficial AF3 plugins and which have to be checked out manually.
The development of these plugins does not need to follow the rules defined in the development workflow, since only few people collaborate on unofficial plugins and to avoid the burden of code-reviewing which will be done when a plugin shall enter the set of official plugins.
Roles¶We mainly use two roles of those provided by gitlab: developers and masters (a complete role/parmission matrix is found here).
- Developers (standard case) may create branches, create issues etc. This is the role which most people take.
- Repository masters administrate the repositories and are allowed to merge changes into the main branch from which the AF3 product is built.
Currently, we use the OSS redmine tool to track bugs and features. We are currently investigating a migration to the gitlab issue tracking or other solutions, so please be aware that the information contained in this section might change in the near future.
The issue tracking system is found here.
Workflow Documents¶The following two slide decks provide step-by-step instructions of the workflow for the above mentioned roles. They can also be passed to external contributors.
- Developer workflow (af3-git-workflow.pptx): describes the following aspects of the workflow:
- Updating your workspace.
- Creating changes.
- Bringing changes to the official build.
- Howto review changes from other developers.
- Master workflow (af3-git-master-workflow.pptx): slide deck for repository masters on reviewing and merging changes.
- Responsibility of a master.
- Reviewing changes (identical to the above one).
- Merging changes into the stable product.
- Q: The rating options in the context menu are not visible.
A: Please ensure that you perform the rating in the package explorer (i.e., not the model or project explorer) and that open the context menu for a ratable file such as java classes.