Xcode 4'e yükselttikten sonra eksik dosya uyarıları


166

Son zamanlarda Xcode 4 (bu büyük bir yükseltme) yükseltti ama şimdi daha önce alamadım bazı uyarılar alıyorum. Ben forumları ve diğer SO mesajları inceledim ama bunu düzeltmek için rastlamak değil.

Aldığım uyarılar, eksik bir dosya için proje düzeyinde uyarılardır. Gösterilen dosyalar proje gezgini görünümünden (ayrıca dosya sisteminden silmeyi seçerek) silinmiştir. Ancak dosya Proje Gezgini'nde artık görünmese de, yine de bir şekilde projeye bağlı olarak görünmektedir.

Etrafa baktım ve Xcode'a bu dosyaların gittiğini nasıl söyleyebileceğimi bulamadım, bana uyarı vermeyi bırak. İşte Xcode4'te aldığım, ancak Xcode 3'te hiç sahip olmadığım bir ekran görüntüsü.

Eksik dosya uyarısı Xcode 4


Ben olsaydım dosyalarınızı diskinizde tutmak yerine her zaman projenize aktarırdım. Daha sonra dosyaları hareket ettirirseniz sizi gerçekten baş ağrısından kurtarır.
sudo rm -rf

Yanıtlar:


297

Bu çözümler çok zor. Sorun, projeyi dosya sisteminden kaldırmış olmanız, ancak SVN hala orada olduklarını düşünüyor. SVN'den proje ayırmak, deponuzu yok edecek olan .svn klasörlerini kaldırmak için aynı işe yarayacaktır!

Konsolu açmak, klasörünüze ("cd / pathToYourFolder") göz atmak ve aşağıdaki komutu yazmak çok daha kolaydır:

svn delete nameOfMissingFile

Eksik dosyanızın adı @ karakteri içeriyorsa (örn: retinaya özgü sanat eseri), dosya adının @ simgesiyle sonlandığından emin olun:

svn delete nameOfMissingFile@2x.png@

GIT depoları için:

git rm nameOfMissingFile


20
Ben de aynı sorunu vardı ve kullanarak Terminal aracılığıyla çözüldü:svn rm --force nameOfMissingFile
ReachWest

1
Bu doğru olarak işaretlenmiş cevaptan daha iyi bir cevaptır. SVN denetimi altındaki bir projeden SVN klasörlerini silmek bütün bir acı dünyası olabilir. Sorunu çözmek için SVN kullanmak en iyisidir. Bu sorunu kendi sorunumu çözmek için takip ettim, ancak Cornerstone'un lüksüne sahibim. Ama başka türlü havalı. Teşekkürler :)
jowie

1
Bu benim için çalışmıyor gibi görünüyor. Dosyayı geri ekleyip silerim, ancak aynı uyarı hala derlemede görünür. Hatta dosyaları projeye geri eklemeyi ve sonra silmeyi denedim. Yine de aynı sorun.
Yenyi

10
Benim için çalıştı, ama ilk svn kullanıyorsanız silebilir önce orada bir kukla dosya oluşturmak zorunda kaldı. Yani nameOfMissingFile'a dokunmanız ve ardından svn nameOfMissingFile --force
Maciej Swic

9
Ayrıca çıkıp sorunun ortadan kalkması için xcode öldürmek zorunda kaldı.
Twilite

55

XCode 4.2. + 'Da (muhtemelen 4+ olarak) manuel çalışma ve komut satırından kaçınabilirsiniz:

  1. Proje Gezgini'ni seçin (Komut - 1)
  2. Dosya - Kaynak Kontrolü - Tamamla menüsünü seçin
  3. Sol bölmede, üstünde üç simge var, ortadaki simgeyi seçin - Dosya görünümü
  4. Tüm eksik dosyaların listesini göreceksiniz
  5. Hepsini seçin ve sağ tıklayın - Değişiklikleri sil. Bu, silinen tüm dosyaları SVN sunucusundan geri yükler ve yerel SVN klasörünüze yerleştirir
  6. Bu dosyaları XCode projesine sürükleyip bırakın (Kolayca bulmak için Finder'da Değiştirilen Tarihi Değiştir'i seçin)
  7. Bu dosyaları XCode aracılığıyla düzgün bir şekilde silin (dosyaları seçin ve Sil'e sağ tıklayın)
  8. Projeyi yürüt

Ve bu kadar :)

Tüm bu kötü uyarılar gitti!

Ek olarak Xcode 6+ için: Dosya görünümü 'orta simgesini' seçtikten sonra - soldaki onay kutusunu tıklayabilirsiniz ve bir sonraki işleminizde SVN için silinmiş olarak işaretler!


1
Sadece 5. adıma kadar ihtiyaç vardı. Aslında SVN dosyaları yoktu.
Darren Reely

Bazı paylaşılan kodlardan başka bir projeyi etkileyen bir projeyi yeniden düzenledim ve XCode, SVN ile ilgili eksik dosyalar hakkında şikayet ediyordu. Manuel olarak proje kaynağı xml ile trol ve hiçbir şey bulamadan, bir SVN sorunu olduğunu anlamak için bir süre aldı.
danfordham

50

Xcode5 ve Xcode6'da, aşağıdaki adımlar benim için çalıştı

Xcode-> Preferences-> Source Control->uncheck Enable Source Control

sonra

Xcode-> Preferences-> Source Control->check Enable Source Control


Xcode 8.3.2'de, bu yaklaşık on dakika çalıştı ve sonra tüm uyarılar geri geldi :(
Bob

27

Projenizdeki .svn gizli klasörleri ile ilgisi vardır.

Projeyi svn'den ayırarak bu sorunu çözdüm.

a. Terminali açın ve aşağıdaki komutları yazın:

defaults write com.apple.finder AppleShowAllFiles TRUE


killall Finder

Bu, projenizdeki .svn klasörlerini görüntülemenizi sağlar

b. Proje klasörlerinizdeki / alt klasörlerinizdeki her .svn klasörünü silin

c. Gizli dosyaları yeniden etkinleştirin:

defaults write com.apple.finder AppleShowAllFiles FALSE

killall Finder

d. Artık projeniz svn'den ayrıldı ve artık derleme sorunları alamıyorsunuz.

e. Projenizi svn ya da neyse yeniden ekleyin.

Ben yeni başlayan biriyim ve bu sorunla başa çıkma şeklimdi, bu yüzden bunun en iyi yol olduğuna emin değilim. Her neyse, sorun çözüldü.


3
SVN gizli klasörleri ve dosyaları ile uğraşmak için iyi bir fikir değil, karışık bir SVN karışıklığıyla sonuçlanabilir. En iyi, eksik dosyaları toplamak için svn delete komutunu kullanmaktır.
jowie

Aslında bu benim izlediğim yol. Evet, kaydedilen tüm SVN bilgilerini siler, ancak aslında başka birisinin tutmak istemediğim belirli bir projeye koyduğu bir şeydi. Yeni bir başlangıç ​​yapmak istedim ve belirli sürümleri korumak umursamadı.
Scott

Ben sadece yeniden başlatarak Finder "killall". Sorun artık yok. Teşekkürler
JHHoang

9

Bu benim için çalıştı:

File-> Source Control->Hide Working Copy Status

sonra

File-> Source Control->Show Working Copy Status


6

Bunu şu şekilde çözdüm:

  1. Eksik dosyanın yolunu kontrol edin.
  2. Proje dizininizdeki uygun konumlarda eksik dosyalar oluşturun
  3. "Projeye" Dosya Ekle "seçeneğini kullanarak bunları projenize ekleyin ve yalnızca referans oluşturun (dosyaları kopyalamayın)
  4. Uyarılar bu noktada ortadan kalkmalıdır.
  5. Xcode içinden, varsayılan "Yalnızca Referansı Sil" yerine "Sil" i tıkladığınızdan emin olarak dosyaları silin
  6. Sen bittin.

4

Ben bu hata vardı ve o pozisyonda boş bir dosya oluşturmak ve sonra onu silmek dışında çözmek için hiçbir yol bulamadı. Projeden sildiğim dosyalar ile oldu ve Türetilmiş Veri dizinini elle silme, temizleme, oluşturma, işe yaramadı. Bunun bir hata olduğuna ve birkaç dosyadan daha fazla olması durumunda oldukça acı verici olabileceğine inanıyorum.


Üzgünüm, bu konuda daha kolay bir yol olmasını umuyordum. Yaklaşık 20 dosyam var, o zaman silme oluşturmak oldukça acı verici olacak.
Scott

4

Ben de bu sorunu vardı ve user151215 .svn klasörleri nedeniyle IS açıkladığı gibi.

Projenin kendisinde değil, projelerin üst klasöründe eski bir .svn klasörü vardı.

rahatsız edici .svn klasöründe eksik dosyalarınızı içeren bir giriş dosyası olacaktır. Böylece Teminal'i kullanabilir ve eksik bir dosya adı dizesi arayabilirsiniz, örneğin grep -lir BagController.m yourRootDevDir / *

Bulucuda gizli dosyaları etkinleştirmekten daha basit, sadece terminali kullanın. cd'yi ilgili dizine ve mv .svn ~ / .Trash

Bu yardımcı olur umarım!



3

Bu sorunla başa çıkmak için aşağıdaki yolu kullandım:

Terminali ve cd'yi proje dizinine başlatın. (ör: cd /Users/Mauro/Src/Pippero-1.2/)

Ardından aşağıdaki komutu girin:

find . -name .svn -exec rm -rf { } \;

komut, .svn adlı dosyaları (ve klasörü) özyinelemeli olarak arar ve siler


bu benim için işe yaramadı, ancak her dizine girip .svn klasörlerini silmek işe yaradı. Sana çok büyük ups, adamım!
gonzobrains


2

Svn kullanıyorum ve bu sorunu çözmek için yönetiyorum

svn delete pathToMissingFile

bu, eksik dosyanın yerel svn kopyasını ve uzak depodaki kopyayı kaldıracaktır.

veya

svn revert pathToMissingFile

bu da eksik dosyadaki değişiklikleri silecektir, bu da eksik dosyayı tekrar bulunduğu yere koymak anlamına gelir.


1

Yukarıdakilerin hepsi yaşadığım aynı sorunu çözmek için işe yaramadı. Biraz araştırma yaparken, yaşadığım sorunun SVN çatışmalarıyla ilgili olduğunu anladım.

Komut satırını kullanarak çakışmalar olduğunu öğrendim:

svn status

Sonra tüm çakışan dosyaların çözülmesi gerekiyordu

svn resolved filename1 filename2 ...

Çatışmalar çözüldüğünde, uyarılar Xcode'dan alındı


1
  1. Değişikliklerinizi yapın ve zorlayın.
  2. Xcode'u yeniden başlatın.

1

Çok basit,

Xcode -> Preferences -> Source Control -> uncheck Enable Source Control

ve yapmayı unutma cmd+shift+k


0

Derlemeden sonra Cmd + 7 tuşlarına basın ve en son derleme eylemini seçin. Biraz iyi eski Xcode gibi mi görünüyor? :) resim açıklamasını buraya girin


Ya, eski XCode gibi görünüyor, ama yeni XCode eksik dosyaları olduğunu söyleyerek sorunu çözmez. Ben görünümü seviyorum, ama bu sadece XCode ile sorunu maskeliyor gibi görünüyor.
Scott

0

Benim durumumda

  1. Sadece SvnX'i açıyorum.
  2. Tüm eksik Dosyalar kırmızı ile işaretlenmiştir. Bunları seçin ve silin.
  3. Sonra tüm Xcode Uyarıları kayboldu.

0

Alex'in cevabı eksik dosyalar sorunumu düzeltti.

Başka bir sorun vardı (eksik dosyalarla ilgili olmasa da, bu daha iyi bir konu olacağını hissediyorum)

  1. Projeme bir dizi resim kopyalamam gerekiyordu.
  2. Ben sadece bir grup (gerçi grubun fiziksel klasöre eşlemiyor biliyorum) oluşturdu ve gruba ("Kopyala .." seçeneği seçili) görüntüleri sürükledi.
  3. SVN durumu hepsini "A" da gösterdi.
  4. Şimdi gerçek dosya sistemine girdiğimde, tüm görüntülerin projemin kök klasörüne kopyalandığını gördüm. İyi görünmediğinden, projemdeki resimler klasörünün içinde fiziksel bir klasör oluşturdum ve eklenen tüm görüntüleri oraya kopyaladım.
  5. SVN daha sonra tüm dosyaları kırmızı renkte gösterdi.
  6. Tüm kırmızı dosyaların referanslarını sildim.
  7. "Dosya Ekle" seçeneğiyle, yeni oluşturulan klasördeki görüntüleri ekledim.
  8. Şimdi SVN dosyaların durumunu "A" olarak gösteremiyor ve dosyaları kontrol edemiyorum.
  9. Farklı bir klasör vb tekrar ekleyerek onları çöp gibi birçok adım denedim, ama herhangi bir şans değildi.

Bunu doğrudan depoya gidip fiziksel klasör şimdi SVN sunucusunda olacak şekilde resimler altında yeni bir dizin oluşturarak düzelttim

Daha sonra kaynağın bir güncellemesini aldım ve yeni oluşturulan dizini çalışma kopyamın içine aldım (projeye eklenmemiş olsa da).

Daha sonra görüntüleri bu dizine kopyaladım ve "A" durumunu geri getiren "Dosya Ekle" seçeneğini kullanarak projeye ekledim ve dosyaları teslim edebildim.

Sadece bunu paylaşmak istedim ..... çünkü benden çok zaman aldı.

-anoop


Bu durumda, Terminal'e ve projenizin kök dizinine gidin. "Svn mkdir name_of_the_folder" ile klasör oluşturun. Find_ ile dosyaları name_of_the_folder öğesinden Projenize sürükleyin ve bırakın (veya tüm dosyaları eklemek için kendi klasörüne koyun). Sorun, "svn mkdir" klasörü SVN'ye eklenmemiş klasör oluşturduğunuzda ortaya çıkar.
Alex

0

Dosyayı doğrudan .xcode klasörünüzden silmeyin. Dosyaları xcode proje gezgininden silin. (Bu dosyayı sağ tıklayın ve çöp kutusuna taşı'yı seçin).

Şimdi, bu sorunu temizlemek için aynı konuma aynı dosyaları ekleyin. Ve proje gezgininden silin.


0

Hiçbir şey yapmam gerekmiyordu. Kodumu taahhüt ettim ve yukarı ittim. XCODE kapatıldı. Tekrar aşağı çekti ve her şey işe yaradı.


0

Genel bakış:

Benim durumumda Sample, aşağıdaki klasör yolunda çağrılan bir xcode Projesi vardı /folder1/folder2.

İçinde beklenen bir .gitdosya /folder1/folder2/Sample/vardı.

Ana neden:

.gitÜst dizinde ( /folder1) soruna neden olan başka bir dosya vardı. Klasörler .gitdosyanın arkasında bırakarak silinmiş olabilir

Çözüm

rm -rf /folder1/.git

İpucu

Projenizi tamamen yeni bir konuma taşımak .git, hiyerarşide üst dizinlerde dosya bulunmadığı sorunu çözerse, yukarıdaki çözümün işe yarayabileceğine dair bir ipucudur.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.