Here's the order of preference for shirt wearing.
1. Wear a really old band shirt, such as a Morningrise or MAYH shirt. This shows that you're not a noob, and have supported the band for a long time.
2. Wear a side project shirt or something related. (Wearing Opeth to see Porcupine Tree). Shows you have some knowledge.
3. Wear an awesome looking shirt, or something by a universally awesome band. (Emperor - In the Nightside Eclipse shirt, etc.)
3. Wear one of the bands more recent shirts. (BWP shirt) This is on par with the last one. I'd say if you're seeing one of your absolute favorite bands, wear their shirt, if it's someone less important, wear some other metal shirt.
4. Wearing a shirt you bought at the show. If you don't want to carry one around, then buy it at the end. (Unless you're a medium, because they only have like 10 mediums at each show.) Nothing says noob like wearing the newest shirt. Unless it's really cool. But the GR shirts aren't that cool.
I suppose this is a very shallow way to evaluate the situation, but I think you can tell a lot about someone from what kind of shirt they wear to a show.
Of course there are people who don't give a shit and don't pay attention to these things. These guidelines aren't for them. But I think this is a rather good way of looking at things. You can usually tell what kind of crowd you're dealing with, and whether a band's fans are smart, or morons. I remember seeing In Flames a few years ago, and like 50% of the crowd was wearing the same stupid IF shirt.
Whatever, don't take me too seriously here.