'Shirt' and 'skirt' are doublets: they both stem from Proto-Germanic *skurtijōn.
'Shirt' was inherited. It underwent the sound changes that turned Proto-Germanic into English.
'Skirt' was borrowed from another Germanic language: Old Norse.
Here's the finale of my doublets series: Germanic doublets in English.