Ich möchte die Änderungen sehen, die in einer Szene (.unity-Datei) vorgenommen wurden, bevor ich sie an git übertrage.
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 Problem mit Szenendateien ist, dass sie GUIDs verwenden, die auf andere Assets verweisen, und wenn ich ein Diff für eine Szenendatei öffne, kann ich daraus nichts wirklich machen.
Stattdessen würde ich gerne so etwas sehen:
Gibt es etwas, das dies tut?
unity
scene-graph
scene
version-control
Lilotop
quelle
quelle
Antworten:
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.).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
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 .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.
quelle
Any decent git tool will do this
... vorausgesetzt, die Datei ist nicht binär. Was eingestellt werden kann (Bearbeiten -> Projekteinstellungen -> Editor -> Asset-Serialisierung). Ich habe gerade zwei Projekte, eines, bei dem es sich bei der Szenendatei um Binärdaten handelt, und eines, bei dem es sich um Text handelt. Der Text wurde aufgrund eines von mir importierten Assets geändert, das dazu ermutigte, zu "Text erzwingen" zu wechseln, da einige Aspekte der Plugin- / Asset- / Zielplattform eine bessere Leistung erbrachten. WARNUNG: Das Ändern des Modus kann zu Datenverlust führen.Ich würde Ihnen empfehlen, Git nur mit Bitbucket (als Push-Ursprung!) Zu verwenden, da es eine wirklich schöne GUI bietet, mit der Sie die grafische Darstellung Ihres Zweigs und des Commit-Verlaufs sowie Änderungen in den Textdateien sehen können, in denen Sie sogar Änderungen sehen können Der Code in Rot und Grün sowie viele andere nützliche Workflow-Funktionen.
quelle