Niedawno zaktualizowałem do Xcode 4 (co jest świetnym ulepszeniem), ale teraz otrzymuję ostrzeżenia, których wcześniej nie dostałem. Przejrzałem fora i inne posty SO, ale nie znalazłem, jak to naprawić.
Ostrzeżenia, które otrzymuję, to ostrzeżenia na poziomie projektu dotyczące brakującego pliku. Pliki, które są wyświetlane, zostały usunięte z widoku nawigatora projektu (również wybrano opcję usunięcia z systemu plików). Jednak nadal wydaje się, że jest on w jakiś sposób połączony z projektem, mimo że plik nie pojawia się już w nawigatorze projektów.
Rozejrzałem się i nie znalazłem, jak mogę powiedzieć Xcode, że te pliki zniknęły, przestań dawać mi ostrzeżenia. Oto zrzut ekranu, który otrzymałem w Xcode4, ale nigdy nie dostałem w Xcode 3.
Odpowiedzi:
Te rozwiązania są zbyt trudne. Problem polega na tym, że usunąłeś projekt z systemu plików, ale SVN nadal myśli, że tam są. Odłączenie projektu od SVN zadziała, to samo przy usuwaniu folderów .svn, ALE to zniszczy twoje repozytorium!
O wiele łatwiej jest otworzyć konsolę, przejść do swojego folderu („cd / pathToYourFolder”) i wpisać następujące polecenie:
svn delete nameOfMissingFile
Jeśli nazwa brakującego pliku zawiera znak @ (np. Grafika charakterystyczna dla siatkówki), upewnij się, że nazwa pliku kończy się symbolem @:
svn delete [email protected]@
W przypadku repozytoriów GIT:
git rm nameOfMissingFile
źródło
svn rm --force nameOfMissingFile
W XCode 4.2. + (Prawdopodobnie w 4+) możesz uniknąć pracy ręcznej i wiersza poleceń:
I to wszystko :)
Wszystkie te paskudne ostrzeżenia zniknęły!
Dodatkowo dla Xcode 6+: Po wybraniu środkowej ikony widoku pliku - możesz kliknąć pole wyboru po lewej stronie, co spowoduje oznaczenie ich jako usuniętych dla SVN przy następnym zatwierdzeniu!
źródło
W Xcode5 i Xcode6 poniższe kroki zadziałały
Xcode
->Preferences
->Source Control
->uncheck Enable Source Control
następnie
Xcode
->Preferences
->Source Control
->check Enable Source Control
źródło
Ma to coś wspólnego z ukrytymi folderami .svn w Twoim projekcie.
Rozwiązałem ten problem, odłączając projekt od svn.
za. Otwórz terminal i wpisz następujące polecenia:
defaults write com.apple.finder AppleShowAllFiles TRUE
killall Finder
Umożliwi to przeglądanie folderów .svn wewnątrz projektu
b. Usuń każdy folder .svn w folderach / podfolderach projektu
do. Ponownie włącz ukryte pliki:
defaults write com.apple.finder AppleShowAllFiles FALSE
killall Finder
re. Teraz twój projekt jest odłączony od svn i nie masz już problemów z kompilacją.
mi. Ponownie dodaj swój projekt do svn lub cokolwiek.
Sam jestem początkującym i to był mój sposób radzenia sobie z tym problemem, więc nie jestem pewien, czy jest to najlepszy sposób. W każdym razie problem został rozwiązany.
źródło
To zadziałało dla mnie:
File
->Source Control
->Hide Working Copy Status
następnie
File
->Source Control
->Show Working Copy Status
źródło
Rozwiązałem to w następujący sposób:
źródło
Miałem ten błąd i nie znalazłem innego sposobu na jego rozwiązanie niż utworzenie pustego pliku na tej pozycji, a następnie usunięcie go. Stało się tak z plikami, które usunąłem z projektu, a czyszczenie, budowanie, ręczne usuwanie katalogu danych pochodnych również nie działało. Uważam, że jest to błąd i może być dość bolesny, jeśli wystąpi z więcej niż kilkoma plikami.
źródło
Miałem też ten problem, a jak opisał to użytkownik151215 jest to spowodowane folderami .svn.
Miałem stary folder .svn, nie w samym projekcie, ale w folderze nadrzędnym projektów.
w szkodliwym folderze .svn będzie znajdować się plik wpisów zawierający brakujące pliki. Możesz więc użyć Teminal i wyszukać brakujący ciąg nazwy pliku, np. Grep -lir BagController.m yourRootDevDir / *
prostsze niż włączanie ukrytych plików w Finderze, po prostu użyj terminala. cd do odpowiedniego katalogu i mv .svn ~ / .Trash
Mam nadzieję że to pomoże!
źródło
Wejdź do odpowiedniego katalogu i uruchom:
źródło
W ten sposób poradziłem sobie z problemem:
Uruchom terminal i przejdź do katalogu projektu. (np .: cd /Users/Mauro/Src/Pippero-1.2/)
Następnie wprowadź następujące polecenie:
polecenie będzie rekurencyjnie wyszukiwać pliki (i foldery) o nazwie .svn i usuwać je
źródło
Wyłączenie SVN w Xcode zapobiega tym problemom (zakładając, że zarządzasz repozytorium za pomocą innego narzędzia SVN). Zobacz to pytanie:
Czy możesz wyłączyć integrację kontroli wersji w Xcode 4?
Oczywiście, to może nie być praktyczne, jeśli istnieją inne projekty Xcode wy nie chcą korzystać z SVN.
źródło
Używam svn i udało mi się rozwiązać ten problem przez
svn delete pathToMissingFile
który usunie lokalną kopię svn brakującego pliku, a także kopię w zdalnym repozytorium.
lub
svn revert pathToMissingFile
który ma zamiar odrzucić zmiany w brakującym pliku, co oznacza przywrócenie brakującego pliku tam, gdzie był.
źródło
Wszystkie powyższe nie pomogły w rozwiązaniu tego samego problemu, co ja. Szukając czegoś, zrozumiałem, że problem, który miałem, był związany z konfliktami SVN.
Dowiedziałem się, że wystąpiły konflikty za pomocą wiersza poleceń:
Następnie wszystkie pliki będące w konflikcie musiały zostać rozwiązane
Po rozwiązaniu konfliktów ostrzeżenia zniknęły z Xcode
źródło
źródło
To jest bardzo proste,
i nie zapomnij to zrobić
cmd+shift+k
źródło
Naciśnij Cmd + 7 po kompilacji i wybierz ostatnią akcję kompilacji. Czy wygląda trochę jak stary dobry Xcode? :)
źródło
W moim przypadku
źródło
Odpowiedź Alexa rozwiązała mój problem z brakującymi plikami.
Miałem jeszcze jeden problem (choć nie jest to związane z brakującymi plikami, czuję, że to byłby lepszy temat)
Naprawiłem to, przechodząc bezpośrednio do repozytorium, tworząc nowy katalog pod obrazami, aby fizyczny folder był teraz na serwerze SVN
Następnie zaktualizowałem źródło i otrzymałem nowo utworzony katalog w mojej kopii roboczej (chociaż nie jest dodawany do projektu).
Następnie skopiowałem obrazy do tego katalogu i dodałem je do projektu za pomocą opcji „Dodaj plik”, co przywróciło mi status „A” i mogłem sprawdzić pliki.
Chciałem się tym podzielić ..... ponieważ zajęło mi to dużo czasu.
-anoop
źródło
Nie usuwaj pliku bezpośrednio w folderze .xcode. Usuń pliki z nawigatora projektu Xcode. (Kliknij ten plik prawym przyciskiem myszy i wybierz przenieś do kosza).
Teraz, aby usunąć ten problem, dodaj te same pliki w tej samej lokalizacji. I usuń z nawigatora projektu.
źródło
Nie musiałem nic robić. Popełniłem swój kod i przyspieszyłem. Wyłączono XCODE. Pociągnął go ponownie i wszystko po prostu działało.
źródło
Przegląd:
W moim przypadku był projekt xcode o nazwie
Sample
w następującej ścieżce folderu/folder1/folder2
.Wewnątrz znajdował się
.git
plik,/folder1/folder2/Sample/
którego oczekiwano.Główna przyczyna:
W
.git
katalogu nadrzędnym (/folder1
) znajdował się inny plik, który powodował problem. Foldery mogły zostać usunięte, pozostawiając.git
plikRozwiązanie
rm -rf /folder1/.git
Wskazówka
Jeśli przeniesienie projektu do zupełnie nowej lokalizacji rozwiązuje problem
.git
polegający na tym, że w katalogach nadrzędnych w górę hierarchii nie było pliku, oznacza to, że powyższe rozwiązanie może działać.źródło