Problem: List of files and folders to be versioned to provide best use of the repository.
The scripts are definitely the prime target and needs to be versioned and Mono Editor provides an in-built support for the same. However would like to know if there are files to ignore. The basic idea is to check out the project and be able to start the development where left off previously.
Any pointers on best practices would be appreciated.
I’m assuming you don’t want to use Unity Asset Server for whatever reason (and there are certainly valid reasons to not use it, although it works quite well for some people’s needs).
As of Unity 3.5 you are supposed to put everything in your Assets and ProjectSettings directories under version control. Obviously that shouldn’t include any stuff you know is junk that you put in those folders yourself (and try to avoid adding useless temporary/intermediate output files like thumbs.db or .mayaswatch files… these depend on which programs and OS you use so I can’t give a complete list), but anything Unity created there or that you put there so Unity can load should get added to the repository. Definitely don’t version anything in the Library directory.
Make sure your project is set to generate a .meta file for every asset because you need to check in all of the .meta files too (go to Edit > Project Settings > Editor > Version Control and set Mode to Meta Files). Every time you add or delete an asset or directory, you’ll have to remember to add/delete it and its associated .meta file in the repository (there are scripts you could use to automate this process but at the moment I don’t know of any that work out of the box). Also, I recommend setting every project to Force Text (in Edit > Project Settings > Editor > Asset Serialization) since that will make it easier to inspect assets and compare different revisions of assets.