Our practice is to only allow reviewed code to be commited to trunk. We use highly-focused, short-lived branches for all of our changes. We generally branch for each bug or technical task being worked on. Then, we create reviews for the commits on those branches. Once the code has been reviewed, the change is merged into trunk and the branch is removed.
The problem we have is that while we have excellent review coverage of our code, that isn't reflected when you use crucible's Review Coverage Overview report. It shows that we have 0% coverage. How do y'all do this? Are you comitting directly to trunk and then reviewing there? Or am I missing some key traceability feature that will carry the reviewed line status forward through a merge?