Wie Marcel sagt: Dies tritt manchmal bei einer Zusammenführung auf. Aber seine Antwort weist nicht auf etwas Bestimmtes hin, also lassen Sie mich einen Hinweis geben, mit dem wir uns einige Male befassen mussten. Wir hatten einige unlesbare Storyboards nach einer Zusammenführung einer Datei, die lokal geändert wurde.
Wir könnten sie beheben, indem wir das Storyboard im Textmodus öffnen und jedes [IDEEditorContext _openNavigableItem:withContentsOfURL:shouldInstallEditorBlock:] (in IDEKit)
am Ende der Storyboard-Datei überprüfen:
Durchsuchen Sie das Storyboard nach den angegebenen Werten. Wenn Sie keine zweite Übereinstimmung für diese Zeichenfolge finden, können Sie diese Zeile mit IDEEditorModeViewController
auskommentieren. Nach dem Entfernen aller ungültigen Segmentreferenzen konnte Xcode die Storyboards wieder öffnen.
Verwendet das Projekt benutzerdefinierte Schriftarten?
Ich habe den ganzen Tag damit verbracht, mich mit dem gleichen Problem zu befassen (mehrere Computer mit mehreren XCode-Versionen) und sofort nach der Installation der beiden benutzerdefinierten Schriften, die wir im Projekt hatten, konnten die Storyboards geöffnet werden.
Ich habe eine Mischung aus der "invalidate" -Ausnahme und einer Array-Ausnahme erhalten. Und die Array-Exception führte einen Entwicklerkollegen zu einer ähnlichen StackOverflow-Frage , wo er merkte, dass wir es hatten benutzerdefinierte Schriftarten.
Das hat für mich funktioniert:
in der Umgebung mit Fehler löschen .storyboard Datei (in den Papierkorb verschieben).
Kopieren Sie .storyboard aus der Umgebung, die funktioniert, und senden Sie sie (Solo-Datei) an die Umgebung, die nicht funktioniert (E-Mail, USB-Stick, Skype).
ziehen Sie das .storyboard zurück in die beschädigte Umgebung (kopieren und speichern)
behoben.
Dieses Problem wird dadurch verursacht, dass die Storyboard-Änderungen der anderen Elemente zusammengeführt werden. Das Storyboard-Format basiert auf XML. Wenn Sie Änderungen vornehmen, werden diese Änderungen in der Projektdatei gespeichert. Xcode scheint nicht-deterministisch zu sein, da es die Struktur dieser Datei speichert, Dinge können anders sortiert werden, Objekte können an verschiedenen Stellen in der Struktur erscheinen. Dies spielt keine Rolle, wenn Sie alleine arbeiten, aber wenn zwei oder mehr Personen Änderungen am Storyboard vornehmen, können Zusammenführungen sehr hässlich werden. Obwohl git in der Lage zu sein scheint, die Dateien zusammenzuführen, wird die Struktur der Datei beschädigt und Sie können Ihre Storyboards nicht öffnen.
Übernehmen Sie Ihre Änderungen an Storyboards frühzeitig und drücken Sie. Ziehen Sie immer, bevor Sie Änderungen am Storyboard vornehmen. Mischen Sie nicht, wählen Sie eine Version und fahren Sie fort.
Sie sind wahrscheinlich besser dran, Ihre xcode-Projektdateien als Binärdateien in Ihrem git-Repository zu behandeln. Siehe Ссылка für eine gute Lektüre dazu.
Was Ihre Situation betrifft, müssen Sie wahrscheinlich eine gute Version Ihrer Projektdatei auschecken und Ihre Änderungen im Storyboard von dort aus neu erstellen.
Verwendet das Projekt benutzerdefinierte Schriftarten?
Ich habe den ganzen Tag damit verbracht, mich mit dem gleichen Problem zu befassen (mehrere Computer mit mehreren XCode-Versionen) und sofort nach der Installation der beiden benutzerdefinierten Schriften, die wir im Projekt hatten, konnten die Storyboards geöffnet werden.
Ich habe eine Mischung aus der "invalidate" -Ausnahme und einer Array-Ausnahme erhalten. Und die Array-Exception führte einen Entwicklerkollegen zu einer ähnlichen StackOverflow-Frage , wo er merkte, dass wir es hatten benutzerdefinierte Schriftarten.
Wie Marcel sagt: Dies tritt manchmal bei einer Zusammenführung auf. Aber seine Antwort weist nicht auf etwas Bestimmtes hin, also lassen Sie mich einen Hinweis geben, mit dem wir uns einige Male befassen mussten. Wir hatten einige unlesbare Storyboards nach einer Zusammenführung einer Datei, die lokal geändert wurde.
Wir könnten sie beheben, indem wir das Storyboard im Textmodus öffnen und jedes segue reference
am Ende der Storyboard-Datei überprüfen:
Durchsuchen Sie das Storyboard nach den angegebenen Werten. Wenn Sie keine zweite Übereinstimmung für diese Zeichenfolge finden, können Sie diese Zeile mit <!-- -->
auskommentieren. Nach dem Entfernen aller ungültigen Segmentreferenzen konnte Xcode die Storyboards wieder öffnen.
Dieses Problem wird dadurch verursacht, dass die Storyboard-Änderungen der anderen Elemente zusammengeführt werden. Das Storyboard-Format basiert auf XML. Wenn Sie Änderungen vornehmen, werden diese Änderungen in der Projektdatei gespeichert. Xcode scheint nicht-deterministisch zu sein, da es die Struktur dieser Datei speichert, Dinge können anders sortiert werden, Objekte können an verschiedenen Stellen in der Struktur erscheinen. Dies spielt keine Rolle, wenn Sie alleine arbeiten, aber wenn zwei oder mehr Personen Änderungen am Storyboard vornehmen, können Zusammenführungen sehr hässlich werden. Obwohl git in der Lage zu sein scheint, die Dateien zusammenzuführen, wird die Struktur der Datei beschädigt und Sie können Ihre Storyboards nicht öffnen.
Übernehmen Sie Ihre Änderungen an Storyboards frühzeitig und drücken Sie. Ziehen Sie immer, bevor Sie Änderungen am Storyboard vornehmen. Mischen Sie nicht, wählen Sie eine Version und fahren Sie fort.
Sie sind wahrscheinlich besser dran, Ihre xcode-Projektdateien als Binärdateien in Ihrem git-Repository zu behandeln. Siehe Ссылка für eine gute Lektüre dazu.
Was Ihre Situation betrifft, müssen Sie wahrscheinlich eine gute Version Ihrer Projektdatei auschecken und Ihre Änderungen im Storyboard von dort aus neu erstellen.
Das hat für mich funktioniert:
in der Umgebung mit Fehler löschen .storyboard Datei (in den Papierkorb verschieben).
Kopieren Sie .storyboard aus der Umgebung, die funktioniert, und senden Sie sie (Solo-Datei) an die Umgebung, die nicht funktioniert (E-Mail, USB-Stick, Skype).
ziehen Sie das .storyboard zurück in die beschädigte Umgebung (kopieren und speichern)
behoben.
Tags und Links xcode storyboard interface-builder