Pytanie Usunąć plik .xcdatamodel z Xcode?


Zrobiłem lekką migrację, której postanowiłem, że już nie chcę. Czy istnieje sposób, aby po prostu usunąć plik? Zmieniłem bieżącą wersję modelu na wersję wcześniejszą i uruchomiono aplikację. Jednak po kliknięciu prawym przyciskiem myszy pliku .xcdatamodel w przeglądarce plików Xcode "Usuń" jest wyszarzone. Próbowałem również usunąć plik z Findera, ale zachowuje on plik w Xcode, usunięty.

Czy istnieje sposób, aby to naprawić?


21
2017-12-27 21:00


pochodzenie


Nie wiem, ale jestem ciekawy, czy ktoś na to odpowie. Jedynym sposobem, jaki mogłem znaleźć, było ręczne edytowanie pliku projektu i usunięcie go. - Jason Coco
Użyj git dla wszystkich twoich projektów. Bardzo łatwo jest dokładnie zobaczyć, co się zmieniło i następnie powróciło. - trapper


Odpowiedzi:


Tak - robiąc to bardzo dużo, według mojej wiedzy jedynym sposobem jest otwarcie YourProject.xcodeproj / project.pbxproj w twoim ulubionym edytorze tekstu (vim ftw!), A także wyszukanie i usunięcie obu wystąpień obraźliwego pliku modelu. To znaczy:

D6A5760112F22213004DEDCE /* MyModel.xcdatamodeld */ = {
  isa = XCVersionGroup;
  children = (
    D6EDB44614ED9D7E00C02938 /* MyModel-V12.xcdatamodel */,
    D6931E6214D78135007F0E03 /* MyModel-V11.xcdatamodel */,
    D61403DD14B7857100323E6D /* MyModel-V10.xcdatamodel */,
    D675476B149BD1F3007C160C /* MyModel-V9.xcdatamodel */,
    D6199DD5143DE428002869C1 /* MyModel-V8.xcdatamodel */,
  );
  currentVersion = D6EDB44614ED9D7E00C02938 /* MyModel-V12.xcdatamodel */;
  name = MyModel.xcdatamodeld;
  path = aPath/MyModel.xcdatamodeld;
  sourceTree = "<group>";
  versionGroupType = wrapper.xcdatamodel;
};

W tym przypadku idę polować na dwa przypadki D6199DD5143DE428002869C1 i usuń je zarówno z pliku projektu, jak i bang: Bob jest moim wujkiem. Również - możesz zmienić kolejność tego fragmentu dzieci powyżej, na wypadek gdybyś chciał, aby obecny był wyższy.

Po wykonaniu tej czynności zwykle uruchamiam ręczne polecenie usuwania repozytorium źródłowego tylko na modelu-V8.


25
2018-02-25 12:40



Dzięki! Skończyło się po prostu nie używać mojego niechcianego pliku .xcdatamodel, dopóki nie musiałem (z nową migracją), ale to wygląda najlepiej real rozwiązanie tam. - aopsfan
Szukałem rozwiązania tego problemu. Dowiedziałem się też, że jest więcej plików gotowych do prawdopodobnego usunięcia, na przykład wewnątrz samego xcdatamodel - Leonardo
Nawiasem mówiąc, jest to również technika, której używam do zmiany kolejności wierszy fwiw. - Scott Corscadden
Dobra odpowiedź kumplu! - Developer
Nie ma problemu! Jestem zdumiony, że to nadal trwa w górze ... od 2012 roku :) - Scott Corscadden


Można to również zrobić usuwając .xcdatamodeld z projektu (tylko usuwanie, nie usuwanie). Następnie, w Finderze (lub Terminalu) usuwając obrażanie  .xcdatamodel plik. I wreszcie, ponowne importowanie .xcdatamodeld w projekcie.


3
2018-01-19 12:00