Ich möchte die Änderungen sehen, die in einer Szene (.unity-Datei) vorgenommen wurden, bevor ich sie an git übertrage.
Jedes anständige Git-Tool wird dies tun, vorausgesetzt, die Szenendatei ist nicht binär . Wie Sie bereits erwähnt haben, erschweren die GUID-Referenzen das Lesen. Wenn die Szene binär ist, kann die Serialisierung in aktualisiert werden Edit -> Project Settings -> Editor -> Asset Serialization
. aber seien Sie gewarnt: Datenverlust auftreten kann (siehe Draco18s Kommentar weiter unten.).
Ich habe mehrere GIT / Unity-Lösungen untersucht, aber alle dienen zum Zusammenführen von Änderungen und nicht zum Anzeigen eines Unterschieds mit der letzten Version.
Das Anzeigen der an einer einzelnen Datei vorgenommenen Änderungen ist eine der Hauptfunktionen von git log. Tatsächlich gibt es dazu eine Frage zum Stapelüberlauf . Grundsätzlich würden Sie so etwas wie verwenden
git log --follow path/to/scene.unity
um den Verlauf dieser Datei anzuzeigen. Hinzufügen -1
, um die letzten Änderungen an der angegebenen Datei anzuzeigen. Lassen Sie den Patch aus -1
und verwenden Sie ihn -p
, um ihn für jedes Commit anzuzeigen , das diese Datei geändert hat. Ich empfehle, die Stackoverflow-Frage durchzulesen, bevor Sie die Git-Log-Dokumentation berühren, da sie sehr lang ist .
Stattdessen würde ich gerne so etwas sehen:
[Szenendiagramm diff]
Gibt es etwas, das dies tut?
Soweit ich das beurteilen kann, nein . Davon abgesehen scheint Unity for Git der natürliche Ort zu sein, um es zu finden. Da es sich um Alpha handelt, sollten Sie dort ein Problem erstellen, um dies zu beheben. Da es einzigartig ist, Git Diff auf die intrinsischen Szenendiagramme von Unity anzuwenden, vermute ich, dass es dort stark relevant ist.