====== Godot-Projekt lokal mit Git administrieren ====== Git ist ein kostenloses Versionskontrollsystem mit Open Source-Technologie, mit dem alle kleinen und großen Projekte schnell und effizient abgewickelt werden können. Wie oft hast du dir schon mal gewünscht, dass eben gesagte Wort nie gesagt zu haben? Im realen Leben gibt es meist keinen Weg zurück! Bei der Erstellung eines Projektes kann ein Fehler, wochenlange Arbeit ruinieren. Die Software Git hilft uns hier Speicherpunkte zu erzeugen zu denen man jederzeit wieder zurückkehren kann. Desweiteren wird durch dieses Tool ermöglicht, mit mehreren Personen gleichzeitig am selben Projekt zu arbeiten. Git ist ein mächtiges Programm, welches hier lediglich nur in den Grundfunktionen angesprochen werden kann. Unter diesem Link ist es runterladbar:\\ https://git-scm.com/ Während der Installation werden einem viele Fragen gestellt, hab mal irgendwo gelesen, nur wenn man genau weiß was man tue, solle man hier Einstellungen abändern. Desweiteren wird noch diese Software benötigt, welche wir ebenfalls installieren. http://kdiff3.sourceforge.net/ ===== Git Initialisieren ===== Nachdem wir mit Godot ein neues Game-Projekt angelegt haben, wechseln wir im Exlorer in eben dies Projektverzeichnis, welches wir standardmäßig hier finden:\\ c:\Users\???User???\Documents\ Ich rege beim Artikel [[godot:install|Installation]] an, alle Godot-Projekte in einem Verzeichnis zu sammeln. Sofern Du dies ebenfalls machst, musst Du den oben genanten Pfad entsprechend erweitern. Um festzulegen welche Dateien und Verzeichnise mit ins Backup integriert werden, müssen wir ins Projektverzeichnis noch folgende Datei hineinkopieren: # Godot-specific ignores .import/ export.cfg export_presets.cfg # Mono-specific ignores .mono/ # System/tool-specific ignores .directory *~ Achtung diese Datei muss nach dem runterladen aus diesem Wiki in **.gitignore** umbenannt werden. Mit Hilfe der rechten Maustaste rufen wir aus diesem Menü "Git Bash Here" auf, wodurch ein Eingabefenster, der Kommandozeileninterpreter geöffnet wird. Wichtig ist, dass wir uns zuvor im Explorer, im richtigen Verzeichnis befinden. Der Pfad ist im Kommandozeileninterpreter ersichtlich. Nach der installation müssen wir erstmalig Git noch sagen, wer wir sind:\\ $ git config --global user.name "Max Mustermann" $ git config --global user.email "Max@Mustermann.de" Bei einem neuen Projekt müssen wir zunächst das Projektverzeichnis mit Git initialisieren\\ $ git init Hierdurch legt git ein Verzeichnis mit dem Namen .git an und ist somit einsatzbereit. Mit git ist es nicht nur möglich einen gradlinigen Projektverlauf zu administrieren, sondern es ist ebenfalls möglich neben dem Hauptzweig(Master) auch weitere Verzweigungen zuzulassen. Wichtig ist an dieser Stelle, wir befinden uns zu Beginn auf diesem Hauptzweig. Mit dem folgenden Befehl überwachen wir alle Dateien und Verzeichnisse auf Veränderungen:\\ $ git add . # oder alternativ $ git add --all An dieser Stelle sollten wir einen ersten Sicherungspunkt setzen, welchen wir immer mit einem Kommentar versehen.\\ $ git commit -m “Kommentar“ Ob es in unserem Projekt Änderungen gegeben hat, können wir uns hiermit ausgeben lassen:\\ $ git status Sollten Änderungen vorliegen, neuen Sicherungspunkt einfügen.\\ $ git commit -a -m “Kommentar“ ===== Speicher-stände(commit) ===== Auflistung aller commit-stände\\ $ git log {{:godot:projekt:gitbash.png}} ==== zu einem älteren Speicher-stand(commit) wechseln ==== $ git checkout Hashtag Der Hashtag ist der Buchstaben-Zahlen-Salat hinter commit. Wir müssen an dieser Stelle nicht den gesamten Hashtag eingeben, es reichen 4-5 Stellen. Wieder zurück zum aktuellen Stand:\\ $ git checkout master Zum letzten abgespeicherten Commit springen, alle seit dem gemachten Änderungen gehen verloren! $ git reset --hard HEAD Zu einem älteren commit-Stand wechseln und alle neueren Stände löschen!\\ $ git reset --hard Hashtag ===== Nebenzweige(Branch) ===== Zur aktuellsten Version des jeweiligen Zweiges(Branch) gelangen wir mit:\\ $ git checkout Zweig Neuen Zweig erstellen\\ $ git branch name Anzeigen welche Zweige es gibt\\ $ git branch Wechsel zu Zweig\\ $ git checkout name Änderunge im Master zum Zweig aktualisieren\\ $ git pull Zweig zum master hinzufügen:\\ nach Master wechseln, Daten zusammenfügen und alten Zweig löschen\\ $ git checkout master $ git merge zweig $ git branch -d zweig