Version management option

Version management option

If you right click on any model, the Version management option appears and within it three options: Commit, Report and Revert. What are these three options used for?