One of our Shotgun project is messy for several reasons (there was never a person dedicated to its maintenance, so several people have been modifying the project in various ways). As a consequence, it is difficult to work with. We then decided to:
- Create a new, clean and well structured Shotgun project.
- Transfer all necessary data from the current one to the new one.
- Switch everyone working to the new project when data transfer will be completed.
The new project has been created by a very experienced Shotgun manager, so it is well crafted and its structure suits our pipeline. We now need to transfer data between the two Shotgun projects.
Here are more information:
- This is a running project, so data are added on Shotgun everyday.
- We do not want to modify in any way the current project during this process, and we think the best idea would be to keep both projects completely separated.
- This project is big enough to make the transfer too tedious to be done manually. We decided to rely on the Python API instead.
- Our entities are available in the new project: sequences and shots, pipeline steps, tasks and assets.
- The next step is populating the new entities with status, versions and notes that exist in the current project.
Here are some questions. Please keep in mind that I am new to Shotgun development, so I might miss things that are obvious.
- As we want to keep both project completely separated, I assume the right way would be to copy existing data as new in the new project, and not link to any existing data. Is this the right way to proceed?
- When copying entities from the current project to the new one, how far should I go? Should I copy every field, including those related to history and such?
- What about metadata? Should they be copied too?
Are their any relevant resources I could look into in order to understand better how to approach this transition?
Did some of you have gone trough a similar experience? Would you have feedback to share if you did?