Game Development Community

Torque regenerating chached dts and imposter files -> git problem

by Duion · in Torque 3D Beginner · 04/18/2013 (10:08 pm) · 4 replies

Just cloned my own repository and launched the game and then noticed, that all chached .dts files and imposters are regenerated, but this must not happen, since the imposters are manually improved and should never be regenerated automatically, cause this would mess everything up and the other thing is git will recognize this as a change and will want to commit every file again, which makes it very complicated to work with.
Any ideas why Torque is doing that and/or how to avoid that?
Or maybe this is just an exception and someone can check if this is really happening all the time. Project is at sourceforge.net/p/uebergame/code/ci/master/tree/

#1
04/19/2013 (4:41 am)
Even when I delete the .dae files I can prevent the .dts from beeing reloaded and changed, but not the imposters.
Torque seems to have its own version control system based on the file creation date, but this is overwritten by git each time, so Torque will reload everything each time and git will then think there is a change each time and so will make a change and so on...
#2
04/19/2013 (2:01 pm)
This is a problem with all generated files and version control software. It's not specific to git. All it (and others) do is look for changesets, and the regeneration that you're seeing counts so they're assuming that you want to do something with them. You can add the cached DTS's to your .gitignore and it will help. You should also add .dso's as well since they will often change.

I haven't ran into Torque regenerating cached DTS files unless the DAE is loaded in the mission and the DTS has been deleted. I have had issues with it referencing the cached DTS but not the dae, so if you clean up the cached DTS's, it would load dummy objects.

I wasn't doing anything with impostors, though.
#3
04/19/2013 (3:10 pm)
I am not talking about regeneration of .dts files because you made a change to the .dae or else, what I mean is that if you clone your own repo without making changes, but he will regenerate the files, even if no changes were made, because the creation date changed through git. Look at a cloned or downloaded repository, all files will have the creation date of the creation of the repository, so it is a change.

Now I reloaded everything, told him to not commit the changes and reset them, pulled over my backup files and now he seams to stay calm. And added write protection to all imposters. I hope this solved the issue for now, but I cannot predict what happens to others when they download.

Ignoring is not an option, since I want to push things up if real changes are made. Keep them in repo but ignoring changes would be an option.
#4
04/20/2013 (7:14 am)
Now I had someone else test it and he said, that no files got regenerated, thats weird, maybe because he did not touch the files with a git application.