In my last project, we followed a very ramified development model - each task had a branch with a task number. Code checks were performed against the named branch. We clearly wanted them to be transferred to the central repository, and the developers pulled them out.
However, no task named branch was merged with the integration branch (in our case, by default, but it could be any function branch) until it passed the code check.
Many mercury developers do not like to use the short-lived branches that remain in the repository, but I find it makes it easier to keep track of the history, especially if you look at the history of one change - you know that the changes for a specific task relate to the associated named branch.
source share