Girly means slightly effeminate for a guy, but not gay. A sporty bloke (jock in US parlance) is not a girly. It is a derogatory term for a guy.
Weed means weak, ineffectual, etc (the opposite of whatba real plant weed is). If the weedy bloke was into computers, etc, he would be a nerd.
Combined, the two are derogatory to us smart, fit, intelligent, sporty, women-loving male specimens of the human race. You don't get many girly weeds in the army.