Etymology
Today it means: To come forward and snitch on someone. Full definition →
Perhaps a blend of snitch (on) + fess up.
Etymology from Wiktionary, CC BY-SA 4.0.