Our team are very new to Unity but has a strong programming background. We have created a Unity project that will allow us to control a simple model (imported asset) using some scripts. The project consists of 4 packages installed from the Asset store, some customisation of those assets and then some C# scripts we have added.
How can we apply version control the project and share it between developers so that they can check out the latest copy of the project, open it in unity and work on it?
The trouble we are having is that assets installed from the store are not portable with the project folder in git. When another new developer opens the Unity project they find that the model is corrupted because they first needed to go to the Asset store and install the same assets that were installed by the developer working on the project earlier to run the install scripts of those assets. Because the project was opened without those assets being installed from the store, installing them after opening the project does not fully restore the model state and the project appears broken.
Really what we would like is a system like NuGet which installs dependency assets when the project is first opened on a new developers machine while the model customisations and scripts are carried over.
How to teams of developers work on a single Unity project?