Xcode 4로 업그레이드 한 후 누락 된 파일 경고


166

최근에 Xcode 4로 업그레이드했지만 (지금은 업그레이드가 잘되지 않았습니다) 경고가 표시됩니다. 포럼 및 기타 SO 게시물을 살펴 보았지만이 문제를 해결하는 방법을 찾지 못했습니다.

내가받는 경고는 누락 된 파일에 대한 프로젝트 수준 경고입니다. 표시되는 파일이 프로젝트 탐색기보기에서 삭제되었습니다 (파일 시스템에서 삭제하도록 선택). 그러나 파일이 더 이상 프로젝트 네비게이터에 나타나지 않더라도 여전히 프로젝트에 연결된 것으로 표시되는 것 같습니다.

나는 주변을 둘러 보았고 Xcode 에게이 파일이 사라 졌다고 경고하는 방법을 찾지 못했습니다. 다음은 Xcode4에서 얻었지만 Xcode 3에서는 얻지 못한 스크린 샷입니다.

누락 된 파일 경고 Xcode 4


내가 당신이라면 항상 파일을 디스크에 링크하는 대신 파일을 프로젝트로 가져옵니다. 나중에 파일을 이동하면 두통을 피할 수 있습니다.
sudo rm -rf

답변:


297

이러한 솔루션은 너무 어렵습니다. 문제는 파일 시스템에서 프로젝트를 제거했지만 SVN은 여전히 ​​프로젝트가 있다고 생각한다는 것입니다. SVN에서 프로젝트를 분리하면 리포지토리를 파괴 할 .svn 폴더를 제거하는 것과 동일하게 작동합니다!

콘솔을 열고 폴더 ( "cd / pathToYourFolder")를 찾아 다음 명령을 입력하는 것이 훨씬 쉽습니다.

svn delete nameOfMissingFile

누락 된 파일 이름에 @ 문자가 포함 된 경우 (예 : 망막 관련 아트 워크) 파일 이름이 @ 기호로 끝나는 지 확인하십시오.

svn delete nameOfMissingFile@2x.png@

GIT 리포지토리의 경우 :

git rm nameOfMissingFile


20
나는 같은 문제가 있었고 다음을 사용하여 터미널을 통해 해결했습니다.svn rm --force nameOfMissingFile
ReachWest

1
이것은 올바른 것으로 표시된 것보다 더 나은 대답입니다. SVN 제어하에있는 프로젝트에서 SVN 폴더를 삭제하면 전체적으로 어려움을 겪을 수 있습니다. SVN을 사용하여 문제를 해결하는 것이 가장 좋습니다. 나는이 대답을 따라 내 문제를 해결했지만 Cornerstone의 사치를 누렸다. 그러나 그렇지 않으면 시원합니다. 감사 :)
jowie

1
이것은 나를 위해 작동하지 않는 것 같습니다. 파일을 다시 추가 한 다음 삭제하지만 동일한 경고가 빌드에 계속 나타납니다. 파일을 프로젝트에 다시 추가하고 삭제하려고했습니다. 여전히 같은 문제입니다.
예니

10
그것은 나를 위해 일했지만 svn을 사용하는 경우 삭제할 수 있기 전에 먼저 더미 파일을 만들어야했습니다. 따라서 nameOfMissingFile을 터치 한 다음 svn delete nameOfMissingFile --force
Maciej Swic을

9
추가로 문제를 해결하기 위해 xcode를 종료하고 종료해야했습니다.
Twilite

55

XCode 4.2. + (4+)에서 수동 작업과 명령 줄을 피할 수 있습니다.

  1. 프로젝트 프로젝트 탐색기 선택 (명령-1)
  2. 파일-소스 제어-커밋 메뉴를 선택하십시오.
  3. 왼쪽 창에는 그 위에 3 개의 아이콘이 있으며 가운데 아이콘-파일보기를 선택하십시오.
  4. 누락 된 모든 파일 목록이 표시됩니다
  5. 모든 항목을 선택하고 마우스 오른쪽 단추로-변경 사항 취소를 클릭하십시오. 이것은 SVN 서버에서 삭제 된 모든 파일을 복원하고 로컬 SVN 폴더에 배치합니다
  6. 해당 파일을 XCode 프로젝트로 드래그 앤 드롭 (파인더에서 정렬 날짜를 선택하여 쉽게 찾을 수 있음)
  7. XCode를 통해 해당 파일을 올바르게 삭제하십시오 (파일을 선택하고 마우스 오른쪽 단추 클릭 삭제를 선택하십시오)
  8. 프로젝트 커밋

그리고 그게 다야 :)

그 불쾌한 경고는 모두 사라졌습니다!

Xcode 6+의 경우 : 파일보기 '중간 아이콘'을 선택한 후 왼쪽의 확인란을 클릭하면 다음 커밋시 SVN에 대해 삭제 된 것으로 표시됩니다!


1
5 단계까지만 필요했습니다. 실제로 SVN에 파일이 없었습니다.
Darren Reely

프로젝트를 리팩터링하여 공유 코드의 다른 프로젝트에 영향을 미쳤으며 XCode는 SVN과 관련된 파일 누락에 대해 불평했습니다. 프로젝트 소스 xml을 수동으로 트롤링하고 아무것도 찾지 못하면 SVN 문제라는 것을 알기 위해 잠시 시간을 들였습니다.
댄 포드 햄

50

Xcode5 및 Xcode6에서 아래 단계가 나를 위해 일했습니다.

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

그때

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


Xcode 8.3.2에서 이것은 약 10 분 동안 작동 한 후 모든 경고가 다시 발생했습니다. (
Bob

27

프로젝트의 .svn 숨겨진 폴더와 관련이 있습니다.

svn에서 프로젝트를 분리 하여이 문제를 해결했습니다.

ㅏ. 터미널을 열고 다음 명령을 입력하십시오.

defaults write com.apple.finder AppleShowAllFiles TRUE


killall Finder

이를 통해 프로젝트 내부의 .svn 폴더를 볼 수 있습니다

비. 프로젝트 폴더 / 하위 폴더에서 모든 .svn 폴더를 삭제하십시오.

씨. 숨겨진 파일을 다시 활성화하십시오.

defaults write com.apple.finder AppleShowAllFiles FALSE

killall Finder

디. 이제 프로젝트가 svn에서 분리되어 더 이상 빌드 문제가 발생하지 않습니다.

이자형. svn 또는 무엇이든 프로젝트를 다시 추가하십시오.

나는 초보자이며 이것이 그 문제를 다루는 나의 방법이므로 이것이 최선의 방법인지 잘 모르겠습니다. 어쨌든 문제가 해결되었습니다.


3
SVN 숨겨진 폴더 및 파일을 뒤섞는 것은 좋은 생각이 아닙니다 .SVN의 혼란에 빠질 수 있습니다. 누락 된 파일을 정리하려면 svn delete 명령을 사용하는 것이 가장 좋습니다.
jowie

이것이 내가 실제로 끝내는 길입니다. 예, 저장된 모든 SVN 정보를 삭제하지만 실제로 다른 사람이 내가 유지하고 싶지 않은 특정 프로젝트에 넣은 것입니다. 나는 새로 시작하고 싶었고 특정 버전 관리에 신경 쓰지 않았다.
Scott

난 그냥 "살해 파인더"를 다시 시작하여. 문제는 이제 사라졌습니다. 감사합니다
JHHoang

9

이것은 나를 위해 일했다 :

File -> Source Control->Hide Working Copy Status

그때

File-> Source Control->Show Working Copy Status


6

나는 그것을 다음과 같이 해결했다.

  1. 누락 된 파일의 경로를 확인하십시오.
  2. 프로젝트 디렉토리 내 적절한 위치에 누락 된 파일 만들기
  3. ""프로젝트에 파일 추가 "를 사용하여 프로젝트에 추가하고 참조 만 작성하십시오 (파일을 복사하지 마십시오)
  4. 이 시점에서 경고가 사라져야합니다.
  5. Xcode에서 파일을 삭제하고 기본 "참조 삭제 만"대신 "삭제"를 클릭하십시오.
  6. 끝났습니다.

4

나는 그 버그를 가지고 있었고 그 위치에 빈 파일을 만든 다음 삭제하는 것 외에는 해결할 수있는 방법을 찾지 못했습니다. 프로젝트에서 삭제 한 파일에서 발생했으며 수동으로 파생 데이터 디렉토리를 정리, 빌드, 삭제하지 못했습니다. 나는 이것이 버그라고 생각하고 몇 개 이상의 파일에서 발생하면 상당히 고통 스러울 수 있다고 생각합니다.


슬픈,이 문제를 해결하는 더 쉬운 방법이 있기를 바랐습니다. 약 20 개의 파일이 있으므로 작성하고 삭제하는 것은 상당히 고통 스럽습니다.
Scott

4

또한이 문제가 있었고 user151215는 .svn 폴더로 인한 것이라고 설명했습니다.

프로젝트 자체가 아니라 프로젝트 상위 폴더에 오래된 .svn 폴더가 있습니다.

문제가되는 .svn 폴더에는 누락 된 파일이 포함 된 항목 파일이 있습니다. 따라서 Teminal을 사용하여 누락 된 파일 이름 문자열 (예 : grep -lir BagController.m yourRootDevDir / *)을 검색 할 수 있습니다.

파인더에서 숨겨진 파일을 활성화하는 것보다 터미널을 사용하면됩니다. 관련 디렉토리로 cd, mv .svn ~ / .Trash

도움이 되었기를 바랍니다!


4

적절한 디렉토리로 이동하여 다음을 실행하십시오.

svn revert fileName

3

그쪽의 문제를 해결하기 위해 다음과 같은 방법을 사용했습니다.

터미널을 시작하고 프로젝트 디렉토리로 cd하십시오. (예 : cd /Users/Mauro/Src/Pippero-1.2/)

그런 다음 다음 명령을 입력하십시오.

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

이 명령은 .svn이라는 파일 및 폴더를 반복적으로 검색하여 삭제합니다.


이것은 나를 위해 작동하지 않았지만 각 디렉토리로 이동하여 개별 .svn 폴더를 삭제했습니다. 내 남자여, 당신에게 너무 큰 업!
곤조 브레인


2

svn을 사용하고 있으며이 문제를 해결하기 위해 관리합니다.

svn delete pathToMissingFile

누락 된 파일의 로컬 svn 사본과 원격 저장소의 사본을 제거합니다.

또는

svn revert pathToMissingFile

누락 된 파일의 변경 사항을 버리고 누락 된 파일을 원래 위치로 되돌려 놓습니다.


1

위의 모든 것은 내가 가진 것과 같은 종류의 문제를 해결하는 데 효과가 없었습니다. 몇 가지 검색을 수행 한 결과 SVN 충돌과 관련된 문제가 있음을 이해했습니다.

커맨드 라인을 사용하여 충돌이 있음을 알았습니다.

svn status

그런 다음 모든 충돌 파일을 해결해야했습니다

svn resolved filename1 filename2 ...

충돌이 해결되면 Xcode에서 경고가 사라졌습니다.


1
  1. 커밋하고 변경 사항을 적용하십시오.
  2. Xcode를 다시 시작하십시오.


0

빌드 후 Cmd + 7을 누르고 최신 빌드 조치를 선택하십시오. 좋은 오래된 Xcode처럼 보입니까? :) 여기에 이미지 설명을 입력하십시오


예, 이전 XCode처럼 보이지만 파일이 누락되었다고 말하는 새로운 XCode의 문제를 해결하지 못합니다. 나는보기를 좋아하지만 XCode의 문제를 가리는 것 같습니다.
Scott

0

나의 경우에는

  1. 나는 단순히 SvnX를 엽니 다.
  2. 누락 된 모든 파일은 빨간색으로 표시됩니다. 선택하여 삭제하십시오.
  3. 그런 다음 모든 Xcode 경고가 사라졌습니다.

0

Alex의 답변으로 파일 누락 문제가 해결되었습니다.

다른 문제가 있습니다 (파일 누락과 관련이 없지만 더 나은 주제라고 생각합니다)

  1. 이미지 세트를 프로젝트에 복사해야했습니다.
  2. 그룹을 실제 폴더에 매핑하지 않는다는 것을 알고 있지만 그룹을 만들고 이미지를 그룹으로 드래그했습니다 ( "복사 위치"옵션 선택).
  3. SVN 상태는 모두 "A"로 표시되었습니다.
  4. 이제 실제 파일 시스템에 들어갔을 때 모든 이미지가 프로젝트의 루트 폴더에 복사 된 것을 발견했습니다. 잘 보이지 않아서 프로젝트의 이미지 폴더 안에 실제 폴더를 만들고 추가 된 모든 이미지를 복사했습니다.
  5. SVN은 모든 파일을 빨간색으로 표시했습니다.
  6. 모든 빨간색 파일의 참조를 삭제했습니다.
  7. "파일 추가"옵션을 사용하여 새로 만든 폴더에서 이미지를 추가했습니다.
  8. 이제 SVN은 파일 상태를 "A"로 표시하지 못하므로 체크인 할 수 없습니다.
  9. 다른 폴더 등에서 다시 추가하여 휴지통을 비우는 것과 같은 많은 단계를 시도했지만 운이 없었습니다.

저장소로 직접 이동하여 이미지를 수정하고 실제 폴더가 SVN 서버에 있도록 새 디렉토리를 만듭니다.

그런 다음 소스를 업데이트하고 작업 복사본에 새로 생성 된 디렉토리를 가져 왔습니다 (프로젝트에 추가되지는 않았지만).

그런 다음 이미지를 해당 디렉토리에 복사하고 "파일 추가"옵션을 사용하여 이미지를 프로젝트에 추가하여 "A"상태로 돌아가 파일을 체크인 할 수있었습니다.

나에게 많은 시간이 걸리기 때문에 이것을 공유하고 싶었습니다.

아눕


이 경우 터미널과 프로젝트 루트로 이동하십시오. "svn mkdir name_of_the_folder"로 폴더를 작성하십시오. Finder가있는 파일을 name_of_the_folder에서 프로젝트로 끌어다 놓으십시오 (또는 모든 파일을 추가하려면 자체 폴더). "svn mkdir"없이 폴더를 생성하면 SVN에 폴더가 추가되지 않습니다.
Alex

0

.xcode 폴더에서 파일을 직접 삭제하지 마십시오. xcode 프로젝트 탐색기에서 파일을 삭제하십시오. 해당 파일을 마우스 오른쪽 버튼으로 클릭하고 휴지통으로 이동을 선택하십시오.

이제이 문제를 해결하려면 같은 위치에 같은 파일을 추가하십시오. 그리고 프로젝트 탐색기에서 삭제하십시오.


0

나는 아무것도 할 필요가 없었습니다. 내 코드를 커밋하고 밀어 올렸습니다. XCODE를 끕니다. 그것을 다시 내리고 모든 것이 잘 작동했습니다.


0

개요 :

제 경우에는 Sample다음 폴더 경로에 xcode 프로젝트가 있습니다./folder1/folder2 .

.git안에 파일 이있었습니다/folder1/folder2/Sample/ 이 있어야합니다.

근본 원인 :

.git상위 디렉토리 ( /folder1)에 문제를 일으키는 다른 파일 이 있습니다 . 폴더는.git 파일

해결책

rm -rf /folder1/.git

실마리

프로젝트를 완전히 새로운 위치로 옮기면 .git상위 디렉토리에 파일 이없는 계층 구조 의 문제가 해결 되면 위의 해결책이 효과가 있다는 단서입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.