I'm not sure if this is applicable everywhere in Germany, but we use das Hemd for shirts with buttons on the front (and we have die Bluse for a blouse). An Undershirt is referred to as das Unterhemd, though it's common for undershirts for women to be called only das Hemd, too – or often das Damen-Hemd if you're shopping. We have das Polohemd for polo shirts, though the expression das Poloshirt is also used. T-shirts are usually called the same: das T-Shirt. So I would not translate Hemd with t-shirt.