 If you're new to Godot, or maybe new to making games and game programming, when you create a new project in Godot, you might see this option for version control metadata. Defaults to git, or you could set none if you don't want to use git. But I would advocate for using git when making your games, because it will save your butt and really help you out. I want to talk about how to use it, what to expect, and why it's so valuable. So when you click new project and select create and edit, I just made a new project called Godot Git. And let's go ahead and, I'm going to use the terminal, but you know, you can use a git GUI, there's GitHub desktop, there's so many different desktop apps for using git. But I'm going to use the command line, because that's where I know best. And don't worry if you don't use the command line, we'll just... It'll make sense either way, I think, I hope. So if we do ls. and look at the files that are in our new project, you see there's icon SVG, project.godot, icon SVG.import. Let's open it in Finder, because that might be a little easier to show you the difference. So if we go and look at icons, we've got project.godot, that's our Godot project file. We've got icon SVG, which comes with new projects, and we've got an import file. And you don't see anything else. But if we look at hidden files, which I'm doing here through the terminal, you can see there's .gitignore and .gitattributes. And then there's a .godot file. Hidden files are any files that start with a .. They're not shown usually by default in the operating system. Let's go ahead and look at what these files are, because Godot created them. So when we said start our project with git metadata, it adds a gitignore that just ignores the .godot directory. So that's great. We know that we don't want to look at... We don't want to track the files in the .godot directory. And Godot is using that for internal purposes that aren't needed. So great. We leave the gitignore there and we just proceed as normal. Then if we do git status, which shows us the state of things, we don't have a git repository. So we need to do gitignit, git init, which is short for initialize. And if we do that again, now there's a .git directory. So that means we're in a git repository. Now if we run git status, you'll see we have these untracked files. And because Godot already adds these files that we care about, like text gets set to certain end-of-line characters, we have the gitignore. So all we have to do is do git add all. And then if we do git status, we've got those. And I wanted to show you what icon.svg.import looks like because it may seem weird to track these files, but it's really important that you do, because Godot uses the import files to reference the image assets, to reference the paths and their unique identifiers, and also their settings when they're imported. So it's really important that you keep track of those in git. If we commit them, we just say initialize new Godot project. And now we have our git log, and that's there. And then let's go ahead and we'll add a scene. We'll just call it a node2d scene. We'll add our icon.svg here. And then if we save this node2d, we'll just call it main. I don't have anything particularly clever to name it hit main. Now if we run it, we'll select our current scene as the main one, and we'll see our svg get rendered. If we go back over here and look at git, you see that project.godot has been modified, and you can see the default run main scene has been set to main. And then if we do catonmain.tscn, there's just a whole bunch of stuff about what's in the scene. The sprite2d, which references our svg file and all that good stuff. So if we just want to add those all, git commit, and we'll say add main scene, and we're working with git. There's nothing else to it too much, but you basically want to commit everything. And if you, let's say, yeah, you basically want to commit everything that Godot creates. That's, I think, the short and the long of it. So there's really not too much to say here with using it with Godot. There's no tricks or gotchas, but I do want to talk about why it's useful. So a couple times where it's been useful. I once renamed a folder and it broke everything. Maybe that's a bug with Godot 4, I don't know. But because I had everything in git, and it corrupted all the scenes, but because I had everything in git, I was able to undo those changes and try it again or go about it a different way. So when you use git and you keep track of things, it has your back. And that's really important, especially when making games, because you might make a bunch of progress and then something might happen, the engine might crash or something might get corrupted and then you're sort of like lost, re-peacing it together. But if you're committing early and committing often, you can utilize git to really help you out and save you in those situations. Also, if you introduce a bug and you're not sure when it was introduced, you can use git bisect to fix it. There's a lot of advanced tools that git gives you that can really help you out. But for me, I think it's necessary when making games because you want to see this log of your changes and you want to make commits in these small little pieces to have your back. Let's see what other points I have. Sometimes, like a dough editor, when you command Z or control Z to undo, it doesn't quite do it in the way you want it to. So you can easily undo things with git. As you work on your game and release things and release your game, you can use tags and keep track of those releases really easily, which can be nice. You can experiment safely without worrying you're going to mess things up by using git branches and those sorts of things. You have backups, so when you have your code and you push it up to GitHub, you have a backup of your source. So if your computer crashes, you can recover your game. So commit early, commit often, and push it up somewhere. You can push it up to GitHub, or GitLab, or Bitbucket, or your own server, whatever you want. I mentioned git bisect. And just some tips is, like, use the default git ignore. It just ignores the doc.do file and that's fine. I'd learn the basics of git if you don't know it. It can be hard at first, but you just need to know a few commands and it's pretty simple. And even as a solo developer, git has immense value. So even if you're working by yourself, it's still really worth it. And yeah, I hope this was helpful. I feel like I'm a little rambly here, but just wanted to just, if you're curious about using version control with Godot, you want to commit the files that it gives you. Use the doc and ignore that it gives you. Commit the import files. Commit your scene files. Don't sweat it. It's all good. It'll work out great. See ya. Thanks. Bye.