Git operations and godot

Hi,

I would like to use with with my game dev project. However I read about the internal VCS plugin and it seems we need to add it in addons folder for each project.

  1. In this case what is the real benefits of this plugin compare to standard git command lines that do not need to be installed for each project (but only on the computer we work) ? I mean “purely” in terms of add, commit, push operations. I know the plugin add a version control panel and commit dock in godot.
  2. How many people really use this plugin for godot, compared to the standard way using the command line in terminal ?

thx

For me i use srparate VScode and CMD for This things coz for memory saving in Github and 3D model stuff I need to filter first my project. then i commit

I doubt there is any way to really know the answer to that.

These plugins are free to try, to use, or to not use. Someone, usually at least the developer, thought it was a useful idea. Try it out and see if it works for you. If not, don’t use it. You can always look through the plugin code and check out how it is working and what it is doing, and even change it if you want to.

Personally, I use GitHub Desktop. Although a bit fiddly sometimes to get setup, it is delightfully easy to use.

2 Likes

As far as I know this plugin is broken and won’t connect to the git service like github properly. For me I managed to connect to the private repo, but wasn’t able to push changes. I haven’t tried it with public repositories though. I use VSCode on pc and termux on my phone

I don’t use the plugin in. I can recommend the following git clients:

  1. https://www.sublimemerge.com/

  2. GitHub - jesseduffield/lazygit: simple terminal UI for git commands · GitHub

In my case after more than 3 hours to work on its setting I can not make it work with GitHub.

Even if I use SSH.

moreover, when you run the push, it freezes your godot app for several seconds.

I simply use either the command line or VSCode for Git (which is also where I write 97% of GDScript). I see no reason why I would want to use the Godot Git addon.

I tried using it, but nothing worked; so I use command-line git.

1 Like

I use Github Desktop for Monkanics. It’s so dang easy to use, as I HATE the command line and think it’s extremely outdated compared to a GUI.

I turns like… 6 different commands to commit into 2 button presses. Making saving progress frictionless.

(You have to reduce friction as much as possible if you want to work on your game consistently)

image

3 Likes

just a question aside: why do you use VSCode for GDScript ?

My first try to Godot was in C#, so in this case I understand why I used VSCode, but now I’m coding in GDScript so I’m in Godot app.

It’s true that Godot GDScript debugger is not so easy at first, but what’s the point to use VSCode for GDScript ?

1 Like

I use Git Fork with Godot, I don’t use any git or vc addons.

I highly recommend it for anyone on Windows or Mac. (sadly no Linux version)

Like other have said, I tried the plugin but it didn’t seem to work properly.
I use the command line or JetBrains Rider (which has a few quirks, but works well enough for GDScript. I also have ~16 years using JetBrains IDEs, so am very familiar with the shortcuts etc its worth it).

1 Like

Also a bit of a PSA, for models and textures etc you can use Git Large File Storage.

I didn’t know this existed until recently (as I never needed too!). Also, I haven’t actually set it up yet, so not sure how easy it is etc (I’m still prototyping so don’t have any large textures/models yet)

GitHub docs for LFS.

2 Likes

I personally don’t use the plugin, as I’d like to have similar tools for different projects. Since I also work as webdeveloper, a Godot git plugin isn’t going to do me any good. I recently switched to Gitui and I’ve got to say, the gif on that page doesn’t do it justice with that color scheme. But it’s a TUI (Text User Interface), which is basically an application run in your terminal. I used to use Github Desktop, but it’s not properly available on Linux, so I found something that always works.
Especially once you get used to the keyboard shortcut it just feels really nice navigating.

1 Like

VSCode is just the better editor in general and with the godot-tools extension it has good Intellisense, completion and code formatting.

Also VSCode is a good Git client.

My workflow is completely simple: I launch Godot, which automatically launches its LSP server, and then I open my project directory in VSCode, which connects to the LSP server. That’s it. I do most of the editing in VSCode and then switch back to Godot to run and debug the project.

Tiny changes like adjusting some values or one, two lines I still do in Godot. But everything that’s bigger I write in VSCode. Being able to automatically format your code with a hotkey is just nice.

I also use two AutoHotkey hotkeys:

  • F5 in VSCode saves the current file, switches to Godot and runs the project (like pressing F5).
  • CapsLock switches between VSCode and Godot and vice versa. Like Alt+Tab, but sometimes there are other programs like the browser in your Alt+Tab history and you accidently switch to those and have to find the right window, but this hotkey switches directly between the two.

I am honestly surprised that not more people do it like this.

I haven’t used the plugin in two years. Command line was just easier for me. I’ve been using that for decades. The plugin hasn’t been update in 6 months, but it looks like the Godot team might be helping maintaining it. If it’s not working, log a bug.

I’m using VSCode for Git, too.
Not sure if I should start a new thread, or if it is on topic here.

Seems interesting. For now I’m committing binary data to git, too. As I don’t upload to GitHub or similar and keep everything local with weekly backups. IMHO It’s not a big problem.
How do you setup your .gitignore? I have blend, textures, glb, SVGs, sound files in git. But I ignore the source files (krita, gimp, inkscape, freeCAD). I ignore .blend1 and any build files from the project.
Do you keep only text source code in there? Where is the limit? I haven’t had any slowdowns or problems with my binaries in there so far.

My example .gitignore looks something like this:

# Godot 4+ specific ignores

.godot/
*.translation

# Blender

*.blend1

# OS-specific

.DS_Store
Thumbs.db

# Syncthing / External tools found in project

.stfolder/

# Local/IDE specific (if any)

.vscode/
*.code-workspace

# Exported binaries (standard paths)

export/
bin/
build/

# Audacity / Tenacity temporary files

*.aup3-wal
*.aup3-shm
*.aup3-bak

Is there a clear right or wrong?

Oh it’s reported, pinned even

1 Like

I also use git LFS for my first project and it works with GitLab. Easy setup. The project is quiet small, though.

1 Like