In our team, the regular procedure is that when we have a significant function, we work on the function branch.
From time to time we merge with masterto exit the function branch, and when we are ready, we return to master(usually with the help of a transfer request).
The problem is that how after the merge the history of commits mixes up - we don’t have a simple way to play the role of the operation of merging branches in order to exclude a branch in case it turns out to be problematic.
We considered several alternatives:
instead of merging the wizard with the function branch, reinstall the branch on top masterso that the function is recorded last in the log.
This will facilitate removal, but we are still in the same problem if someone does not follow this rule)
Instead of merging the branch back to master, reinstall the function branch on top of it. this probably means that we can no longer use pull requests.
Keep the tag wizard script.
Since the cases when we need to exclude an already merged branch are very rare - we can probably consider and consider commits from yesterday one by one. it sounds very hacky, but it doesn’t stand what we are doing here right now.
What is the best practice here?