Our team currently works as follows:
- Individual developers initially clone from the blessed repository (i.e. remote master)
- The developer creates a topic branch from master
- They work on their topic branch
- Before opening a merge request (we use gitlab), the developer rebases the latest master on their topic branch
- They push that to gitlab on the remote topic branch
- They then open a merge request on gitlab
- The integration manager finally merges the MR on the remote master (gitlab)
Unfortunately, this workflow seems to be problematic (because we rebase public commits)... We are well aware of that.
The trouble is that we are unsure what workflow to adapt in order for the developers' topic branches not to be behind master when the merge request is pushed/opened.
Can someone please suggest an appropriate workflow?