Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
Versionsverwaltungssysteme
Einführung
Godot strebt danach, VCS-freundlich zu sein und größtenteils lesbare und merge-bare Dateien zu generieren.
Versionsverwaltungs-Plugins
Godot unterstützt auch die Verwendung von Versionsverwaltungssystemen im Editor selbst. Für die Versionsverwaltung im Editor ist jedoch ein Plugin für das von Ihnen verwendete VCS erforderlich.
As of October 2025, there is only a Git plugin available, but the community may create additional VCS plugins.
Offizielles Git-Plugin
Die Verwendung von Git innerhalb des Editors wird von einem offiziellen Plugin unterstützt. Sie können die neuesten Versionen auf GitHub finden.
Die Dokumentation zur Verwendung des Git-Plugins finden Sie in seinem Wiki.
Dateien, die von VCS ausgeschlossen werden sollen
Bemerkung
Seit Godot 4.1 sollten die hier aufgelisteten Dateien und Ordner von der Versionsverwaltung ausgeschlossen werden.
Die Liste an Dateien und Ordnern, die von der Versionsverwaltung ausgeschlossen werden sollten, ist für Godot 3.x und Godot 4.0 komplett anders. Es ist wichtig, dies zu beachten, da Godot 3.x und 4.0 sensitive Zugangsdaten in export_presets.cfg speichern kann. (Seit Godot 4.1 ist das nicht mehr der Fall).
If you are using Godot 3, check the 3.6 version of this documentation page
instead.
Godot generiert einige Ordner und Datein automatisch, wenn ein Projekt zum ersten Mal im Editor geöffnet wird. Um Ihr Versionsverwaltungs-Repository nicht mit diesen generierten Daten zu überfluten, sollten sie vom VCS ignoriert werden:
.godot/: Dieser Ordner speichert unterschiedliche Projekt-Cache-Daten.*.translation: Diese Dateien sind binär importierte Übersetzungen, die aus CSV-Dateien erzeugt wurden.
Der Godot-Projekmanager kann Versionsverwaltungs-Metadaten automatisch erstellen, wenn ein Projekt erstellt wird. Wird die Option Git gewählt, erstellt er .gitignore und .gitattributes-Dateien im Stammverzeichnis des Projektes:
Erstellen von Versionsverwaltungs-Metadaten im Neues Projekt-Dialog des Projektmanagers
Wählen Sie in bestehenden Projekten das Menü Projekt oben im Editor, und wählen Sie dann Versionskontrolle > Versionsverwaltungs-Metadaten erstellen. Dadurch werden die gleichen Dateien erstellt, wie wenn der Vorgang im Projektmanager durchgeführt worden wäre.
Mit Git unter Windows arbeiten
Die meisten Git-Clients für Windows sind mit der Einstellung core.autocrlf auf true konfiguriert. Dies kann dazu führen, dass Dateien unnötigerweise von Git als geändert markiert werden, da ihre Zeilenenden automatisch von LF in CRLF umgewandelt werden.
Es ist besser, diese Option einzustellen als:
git config --global core.autocrlf input
Wenn Sie Metadaten für die Versionsverwaltung mit dem Projektmanager oder dem Editor erstellen, werden die LF-Zeilenenden automatisch in der Datei .gitattributes festgelegt. In diesem Fall brauchen Sie Ihre Git-Konfiguration nicht zu ändern.
Git LFS
Git LFS (Large File Storage) is a Git extension that allows you to manage large files in your repository. It replaces large files with text pointers inside Git, while storing the file contents on a remote server. This is useful for managing large assets, such as textures, audio files, and 3D models, without bloating your Git repository.
Bemerkung
When using Git LFS you will want to ensure it is setup before you commit any files to your repository. If you have already committed files to your repository, you will need to remove them from the repository and re-add them after setting up Git LFS.
It is possible to use git lfs migrate to convert existing files in your repository, but this is more in-depth and
requires a good understanding of Git.
A common approach is setting up a new repository with Git LFS (and a proper .gitattributes), then
copying the files from the old repository to the new one. This way, you
can ensure that all files are tracked by LFS from the start.
To use Git LFS with Godot, you need to install the Git LFS extension and configure it to track the file types you want to manage. You can do this by running the following command in your terminal:
git lfs install
This will create a .gitattributes file in your repository that tells Git to
use LFS for the specified file types. You can add more file types by modifying
the .gitattributes file. For example, to track all GLB files, you can do this by
running the following command in your terminal:
git lfs track "*.glb"
When you add or modify files that are tracked by LFS, Git will automatically store them in LFS instead of the regular Git history. You can push and pull LFS files just like regular Git files, but keep in mind that LFS files are stored separately from the rest of your Git history. This means that you may need to install Git LFS on any machine that you clone the repository to in order to access the LFS files.
Below is an example .gitattributes file that you can use as a starting point for Git LFS.
These file types were chosen because they are commonly used, but you can modify the list to include any binary types you may have in your project.
# Normalize EOL for all files that Git considers text files.
* text=auto eol=lf
# Git LFS Tracking (Assets)
# 3D Models
*.fbx filter=lfs diff=lfs merge=lfs -text
*.gltf filter=lfs diff=lfs merge=lfs -text
*.glb filter=lfs diff=lfs merge=lfs -text
*.blend filter=lfs diff=lfs merge=lfs -text
*.obj filter=lfs diff=lfs merge=lfs -text
# Images
*.png filter=lfs diff=lfs merge=lfs -text
*.svg filter=lfs diff=lfs merge=lfs -text
*.jpg filter=lfs diff=lfs merge=lfs -text
*.jpeg filter=lfs diff=lfs merge=lfs -text
*.gif filter=lfs diff=lfs merge=lfs -text
*.tga filter=lfs diff=lfs merge=lfs -text
*.webp filter=lfs diff=lfs merge=lfs -text
*.exr filter=lfs diff=lfs merge=lfs -text
*.hdr filter=lfs diff=lfs merge=lfs -text
*.dds filter=lfs diff=lfs merge=lfs -text
# Audio
*.mp3 filter=lfs diff=lfs merge=lfs -text
*.wav filter=lfs diff=lfs merge=lfs -text
*.ogg filter=lfs diff=lfs merge=lfs -text
# Font & Icon
*.ttf filter=lfs diff=lfs merge=lfs -text
*.otf filter=lfs diff=lfs merge=lfs -text
*.ico filter=lfs diff=lfs merge=lfs -text
# Godot LFS Specific
*.scn filter=lfs diff=lfs merge=lfs -text
*.res filter=lfs diff=lfs merge=lfs -text
*.material filter=lfs diff=lfs merge=lfs -text
*.anim filter=lfs diff=lfs merge=lfs -text
*.mesh filter=lfs diff=lfs merge=lfs -text
*.lmbake filter=lfs diff=lfs merge=lfs -text
For more information on Git LFS, check the official documentation: https://git-lfs.github.com/ and https://docs.github.com/en/repositories/working-with-files/managing-large-files.