As all tableau files (data sources, work books etc) are simply XML files these can be versioned. At the moment version control (particularly when using Tableau Server) is non-existent. If two people work on the same workbook and publish it the last published version will be the one that's definitive. Likewise doing a rollback to an earlier version of a file is impossible unless you save multiple versions of your workbook as you go.
The most straightforward way to deal with this is to allow for integration with a Version Control System - and I would suggest Git (given this is most actively used now). Integration would have a folder that is in sync with the Git repository and changes could be committed, branched etc as per normal.
The second requirement would be to allow deployment of workbooks and data sources using Git as the source for the publish (and not the specific users). This would make deploying changes to data sources and workbooks loads more robust and allow multiple users to collaborate much more easily.