Detect Magic

Detect magic can detect any magic effect unless otherwise stated. This includes illusion, charm, and polymorph. If it's dispellable, it's detectable, unless there is some special protection lain. For example, detect charm can be cast reversed in order to prevent detection of charm.

In contrast, detect magic would not detect that a creature was reincarnated from another creature, since that isn't dispellable. It also wouldn't detect a pixie's invisibility, since they are naturally invisible and their magic power is to become visible.

Relation to //detect charm// and //detect invisibility//

Detect magic can tell that a target is charmed or invisible. However, the specialty spells have useful benefits. For example, in the case of detect charm, the caster can actually tell that the target is charmed and not merely that there is some magical effect or magical item on their person. It also can be reversed to prevent such detection. Detect illusion actually has an effect which allows the caster to make others see that the illusion is indeed an illusion.1)

1)
PHB 94.