commit wrapper