Best way to save scene.tscn #10528
Replies: 1 comment 14 replies
-
Being brutally honest... It seems you want version control. which Godot does not have integrated. So I see where you are coming from. Software developers sooner or later learn to use version control systems for their projects (game related or not, using Godot or not)... And the version control systems that developers use were designed for text because code - often - is text. Consequently Godot works fairly well with them thanks to defaulting to text formats... The thing you want to change. Be aware that changing the way Godot saves the project would be a huge change. Even more if you want it down to a single file, and that change would mess everybody's workflow. Let us imagine, the Godot team decides to go along with it... It won't happen tomorrow, it would take time. And you want a solution now, so you can keep working on your project, don't you? Most programmers learn to use version control the hard way, after they have lost some work. In fact, programming courses rarely tell you about it. This might be your time... You are one of the lucky 10000 (that's an XKCD 1053 reference). We, software developers, might manage a code repository (for the Godot project or something else) using some software apart from what we use to write code. That used to be the way before IDEs began integrating version control. You are on GitHub. You have seen a code repository hosted here. And it might sound like I'm asking you to open your code... But I'm not. A repository does not have to be on GitHub, and even if it is, it does not have to be public... But a repository could be only on your machine, and it does not have to use Git. Of course a repository on a remote server can also provide a solution for collaborative development, which is either a bonus or a must depending on your team... And also means that if your machine burns, you didn't lose your code. Let us take a Godot project as an example... The project is a folder, with many files, plenty of them are text. We could make backup copies of the folder as a whole. But why make a backup of the whole folder every time? It makes more sense to make a backup of what changed (i.e. an incremental backup). And it makes more sense to have a software detect what changed instead of doing it manually. And a version control solution already does that. Godot does not need to reinvent it. On Windows I use GitHub Desktop and I use private repositories on GitHub. While there are nicer tools (including working from CLI), I found GitHub Desktop fairly approachable for artists and it works with private repositories, plus it is free. So this is what I made my team use, and using it myself helps me be familiar with it enough to help them. The main friction is that you need to make commits, so you can't just forget about it. This is what you do: you make a repository, you put your files in it, and after any meaningful modification, you make a commit... And making a commit requires you to write a description, which you might hate at first, and you might get lazy on them later, but you will thank you have it when you need to go back a long way to find the correct commit (plus it might help in communicating to your team what's new, although there are better tools to track work). The other thing you need to do is push and pull. You push to send to the server, and you pull to get changes from the server. Everything else is situational, and I'll hope you can look online how to do things when you need them. If right now you are thinking this is too much work, and a reason to give up on Godot... Know that you should be using repositories if you are developing, even if you are not using Godot. On the other hand, Blender uses a binary format that can have everything embedded inside, making it very hard to integrate into traditional version control solutions... It is not a surprise they have their own rollback. The solution they offer is based on making backups of the blend file, like many other software with autosave does. And it isn't a surprise either that artists are - usually - not familiar with version control. The Blender binary format does not help collaborative development, and it makes work that combines blend files with other development into a single project messier. It might even push teams to use expensive version control systems that are tailored to work with binary data. I would wish Blender changed format, but I think that boat sailed long ago, and this is not the place to discuss it. Addendum: Yes, I know it is a challenge to come up with a good patching system for meshes, and that having it in text format would make it heavier. Yet, I'd wish it was a folder. Anyway, this is off-topic. All in all, I'd rather Godot integrate more directly with version control, so it can offer you common operations from the editor, than to change the format. Meanwhile, you can learn to use an external one. In any case, any situation where Godot corrupted a scene is a bug, and if you can report such a case, please do. That should be fixed. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
I just hope that the godot dev could have make a saving system like blender.
For example whenever you open project in blender sometimes it does not get open or gets immediately crash AKA corrupt file, what we can do is to go back and recover our file where there is no error in it.
I am getting tired of this scene.tscn getting error over an over again. I really feel like quitting godot for good because it is my third time I am trying make third person controller system inside godot
Please kindly fix this issue.
Beta Was this translation helpful? Give feedback.
All reactions