Abstract commit