how to manage version control