We are managing a few independent products (not even many), but between the products, maintenance of old versions and past milestones, there are quite a lot in filters so that I'm hesitant to assign actual milestones, not just releases.
I want to suggest "child milestones", with the follwing functionality:
Milestone 2.4 may have the child milestones 2.4-I and 2.4-II etc.
Showing cases for milestone 2.4 will show all cases assigned to 2.4 or any of its child milestones. Showing cases for 2.4-I will of course only show cases for this milestone.
Selection of milestones in filters etc. uses a tree rather than a list, similar to the "priority" selection dropdown. However, For a collapsed milestone
[+] 2.4
clickign the [+] will expand, whereas clicking 2.4 selects that milestone.
Recursion (i.e. child milestones for child milestones) doesn't seem necessary to me.
Alternatively, allow partial matches of the milestone, so that 2.4* will match all three milestones. That doesn't help with the size of the list, though.
Workarounds: One could use tags for the sub milestones a sadditional filter element.