Xcode 8 - Warnungen zu fehlenden Dateien

127

Seit dem Upgrade auf Xcode 8 mit Swift 2.3 fehlen mehrere Warnungen für Dateien. Sie beziehen sich alle auf Pods, die ich benutze.

Die fehlenden Dateien sind

*.xcscheme 
*.cpp
*.xcuserstate
*.swift

Die Pods, in denen fehlende Dateien angezeigt werden, sind

  • Reich (~ 38 von 43)
  • TextFieldEffects (~ 3 von 43)
  • BEMCheckBox (2 von 43)

Wie behebe ich dieses Problem?

Alan
quelle
Hast du es versucht pod install?
Marc-Alexandre Bérubé
@ Marc-AlexandreBérubé ja, ich habe ein paar mal versucht, den Pod zu installieren. Löschte den Pod-Ordner und führte eine weitere Installation durch.
Alan

Antworten:

298

Dies ist nur ein Xcode-Fehler. Wenn Sie eine Datei löschen oder umbenennen, ohne dann ein Commit durchzuführen, erkennt Xcode die Diskrepanz zwischen dem vorherigen gitCommit und dem aktuellen Status und meldet diese Warnungen. Sie verschwinden, sobald Sie eine git addDatei erstellen, die das Löschen / Umbenennen der Datei enthält.

matt
quelle
25
Das Hinzufügen der Dateien zum index ( git add) ist ausreichend, es ist nicht erforderlich, sie tatsächlich festzuschreiben (wahrscheinlicher ist das Projekt nicht bereit, festgeschrieben zu werden ...)
djromero
@djromero Danke, dass du das aufgespürt hast! Möchten Sie, dass ich das zu meiner Antwort hinzufüge?
Matt
@ Matt sicher, fühlen Sie sich frei, es zu tun
Djromero
Ein neues Commit hat das Problem für mich behoben.
MatterGoal
34
Für mich war es so einfach wie das schnelle Deaktivieren und erneute Aktivieren der Quellcodeverwaltung unter den Einstellungen. Xcode> Pref> Quellcodeverwaltung> Deaktivieren Sie "Quellcodeverwaltung aktivieren" .... und aktivieren Sie sie anschließend erneut. Und Mist! Weg!
BennyTheNerd
84

Wenn Sie keine Xcode-Quellcodeverwaltung verwenden, sondern einen anderen Git-Client (z. B. Quellbaum oder Terminal), können Sie die Quellcodeverwaltung in Xcode deaktivieren. Anschließend werden Warnungen ausgeblendet.

Xcode> Einstellungen> Quellcodeverwaltung und deaktivieren Sie " Quellcodeverwaltung aktivieren ".

milczi
quelle
Entfernt dies dann den Side-by-Side-Vergleich für das alte Commit aus XCode? Ich gehe davon aus ...
Byron Coetsee
15

Ich habe all dies (und viele andere) ausprobiert, aber keines hat funktioniert. Nachdem ich stundenlang verschiedene Korrekturen ausprobiert hatte, stellte ich fest, dass das folgende Verfahren funktionierte.

cd "project directory"
git add .

Sie müssen XCode schließen und erneut öffnen, da sonst zukünftige Commits fehlschlagen können.

Hoffe das hilft jemandem.

Parrett Apps
quelle
Genial. Mein Projekt wurde durch die Aktualisierung der Pods etwas chaotisch und die Warnungen wurden einfach zu viel ... Dies hat das Problem behoben. Vielen Dank!
Colibri
8

Ich löse das Problem einfach so:

  1. Fügen Sie den Täter dem Projekt hinzu Geben Sie hier die Bildbeschreibung ein

  2. Entfernen Sie die Referenz Geben Sie hier die Bildbeschreibung ein

Dies bereinigt den internen Status von XCode und die Nachricht verschwindet.

Hassan Karimi
quelle
Das funktioniert tatsächlich. Die Lösung von @ matt hat unter bestimmten Umständen einmal funktioniert, aber ich habe eine böse Datei, die immer wieder zu XCode zurückschleicht, und dies ist der einzige Weg, sie loszuwerden.
qwerty_so
7

Wie wäre es commitin Source Control.

Möglicherweise müssen Sie zuerst den Paketinhalt von "your project name".xcodeprojund den Paketinhalt von anzeigen project.xcworkspaceund dann den xcuserdataOrdner löschen .

Wenn Sie aufgrund eines Problems mit der Hilfsanwendung immer noch kein Commit durchführen können, versuchen Sie Folgendes in Ihrem Projektverzeichnis:

xcrun git config user.name "Your Name"
xcrun git config user.email YourEmailAddress

* Denken Sie daran, das Projekt erneut zu öffnen, um den Effekt zu sehen.

Tim
quelle
7

Sie können das Problem beheben, indem Sie die Option "Dateien automatisch hinzufügen und entfernen" unter X-Code-> Einstellungen-> Quellcodeverwaltung aktivieren

Hier ist der Screenshot der Einstellungen

Rahul Joshi
quelle
7

Xcode 8 scheint git adddie gelöschten / verwandten Dateien oft zu übersehen . Um dies zu korrigieren, tippen Sie im Commit...Xcode- Source ControlMenü auf, überprüfen Sie diese Dateien (gefolgt von einem Ausrufezeichen!) Und übernehmen Sie die Änderungen. Dies sollte die Warnungen löschen.

CodeBrew
quelle
5

Ich hatte dieses Problem jetzt ein paar Mal und schließlich hatte ich es, nachdem ich hässliche Problemumgehungen durchgeführt hatte! Ich setzte mich und verfolgte es, bis ich den Grund dafür fand und die Referenzen gespeichert waren!

Wie jemand bereits vorgeschlagen hat, hat es mit Versionskontrolle zu tun, na ja und nein, in einigen Fällen hat es definitiv damit zu tun, mit Dateien direkt im Finder oder was auch immer herumzustöbern (aber nicht von XCode)

Hier ist eine schnelle Lösung, die viel Ärger und Schimpfwörter erspart!

Löschen Sie diese Datei: ./.xcworkspace/xcuserdata/.xcuserdatad/UserInterfaceState.xcuserstate

Und die Fehler verschwinden!

Patrik Forsberg
quelle
Dies funktionierte zunächst, aber die fehlenden Dateien wurden kurz darauf wieder angezeigt.
Hackmodford
4

Ich hatte das gleiche Problem. In meinem Fall gab es ein .git-Verzeichnis in einem übergeordneten Verzeichnis meines Projekts. Durch Löschen des übergeordneten .git-Verzeichnisses wurden die Fehler behoben.

freytag
quelle
3

In meinem Fall wurden Pods in das Repository eingecheckt und generierten ein paar hundert Warnungen für "fehlende Dateien". Es wurde behoben, indem Pods aus dem Repo entfernt wurden:

git filter-branch --index-filter 'git rm --cached --ignore-unmatch Pods/*' --tag-name-filter cat -- --all
Paweł
quelle
2

Ich habe dieses Problem durch folgende Schritte behoben:

  1. Abgeleitete Daten löschen

  2. Verwerfen Sie fehlende Dateien während des Festschreibens und führen Sie dann ein Festschreiben durch.

  3. Sauber bauen

  4. Aufgelöst..

Happy Coding .. :)

Dimple Shah
quelle
1

Ich habe das gleiche Problem festgestellt, nachdem ich im Projekt eine benutzerdefinierte CollectionView-Zelle (CustomCollectionViewCell) hinzugefügt habe. Der gleiche Fehler ist wie oben aufgetreten. Stattdessen müssen wir die Datei nicht löschen.

Benennen Sie die fehlende Datei für mich in "xCustomCollectionViewCell.xib" um.

Jetzt ist der Fehler weg.

Benennen Sie dieselbe Datei erneut in den ursprünglichen Namen "CustomCollectionViewCell.xib" um.

Shrawan
quelle
1

Das hat es für mich behoben:

git reset HEAD <path-to-deleted-file-that-was-causing-the-Xcode-warning>
Francis
quelle
0

Ich hatte dieses Problem mit Xcode 9.3

Die Lösung, die für mich funktioniert hat: Fügen Sie ein Leerzeichen in die Datei ein, speichern Sie es und warten Sie, bis sich der !Status ändertM hat. Löschen Sie den Speicherplatz und speichern Sie ihn.

Leider habe ich diesen Beitrag mit fast 100 Dateien erneut besucht, und dieser Kommentar von @BennyTheNerd zu einer Antwort hat geholfen!

Für mich war es so einfach wie das schnelle Deaktivieren und anschließende erneute Aktivieren der Quellcodeverwaltung unter den Einstellungen. Xcode> Pref> Quellcodeverwaltung> Deaktivieren Sie "Quellcodeverwaltung aktivieren" .... und aktivieren Sie sie anschließend erneut. Und Mist! Weg! - BennyTheNerd 16. Januar 17 um 7:29

Zusätzlich hatte ich jedoch ziemlich Xcode und öffnete dann das gleiche Projekt und aktivierte dann die Quellcodeverwaltung über die Einstellungen wieder.

Hoffe das hilft!

Nitin Alabur
quelle