Что означает знак вопроса в навигаторе проекта Xcode?


105

В навигаторе проекта в Xcode я не уверен, что? пытается сказать мне рядом с именем файла.


Скриншот

Я уверен, что это не совпадение, что это тот же файл, который я перетащил из корневого каталога проекта в папку Classes (потому что там был файл .mm, и я хотел, чтобы они были вместе). Проект по-прежнему компилируется нормально, однако у меня недавно нарушилось чувство кода, и мне интересно, может ли это быть частью проблемы.

Спасибо!

Ответы:


140

Это файл, не отслеживаемый системой контроля версий.


2
Если вы используете систему контроля версий, вероятно, имеет смысл добавить ее.
Михаил Крелин - хакер

85
Спасибо. В случае, если кто-то еще прочитает это, просто щелкните файл правой кнопкой мыши и выберите «Управление исходным кодом» -> «Добавить». Это будет? to A. Итак, в основном:? означает, что не является частью системы контроля версий. Средство добавлено в систему управления версиями, но не изменено. M означает, что он добавлен в систему управления версиями и изменен.
Фархан Хафиз,

5
Кроме того, если вы видите вопросительный знак напротив файла, который, как вы знаете , отслеживается, а пункт меню «Управление исходным кодом» -> «Обновить статус» ничего не меняет, попробуйте просто выйти и перезапустить Xcode. Вздох.
Мэтт Гибсон,

Если все вышеперечисленное не сработало, просто выбросьте свой Mac, затем наступите на него, затем перезапустите и, пока он перезагружается, ударьте по нему молотком. Если ваш Mac зашел так далеко, попробуйте повторно открыть XCode. Если это не сработало, вы знаете, что делать.
Джозеф Фрэнсис

В моем проекте не использовался Source Control, но перезапуск Xcode (12 beta) устранил проблему. Спасибо @MattGibson
Марси

72

Эти символы относятся к исходному элементу управления.


  • ? - Неверсированный
  • M - модифицированный
  • A - Добавлено
  • A + - перемещен / переименован
  • U - более новая версия файла в системе контроля версий

Больше ссылок здесь


почему файл не версируется автоматически ??
Hos Mercury

21

Вы можете добавить в систему управления версиями, выбрав неотслеживаемые файлы введите описание изображения здесь


4

Это незафиксированные файлы, если вы используете GIT, вам нужно щелкнуть правой кнопкой мыши Source Control> Commit Selected File вручную. Следует убрать знак "?" в новой версии Xcode 6.3.2 на сегодняшний день


4

Следующие шаги решили проблему для меня:

  • Выделите все файлы с помощью "?"
  • Щелкните правой кнопкой мыши и выберите Source Control.
  • Выберите Добавить выбранные файлы
  • Выберите Зафиксировать выбранные файлы ...
  • Во всплывающем диалоговом окне просто оставьте комментарий (неважно, что =)

Экран


2

Вместе со всеми другими ответами. Этого не должно происходить по умолчанию, ЕСЛИ вы не изменили настройки в Xcode.

В настройках Xcode >> Source Control >> убедитесь, что выбран параметр «Добавить и удалить файлы автоматически».

введите описание изображения здесь


0

У меня внезапно появляется один мой файл Unversioned(со знаком?), Но это старый файл.

Это был файл .m. Перед тем как возникла проблема, я создал ее копию для создания нового аналогичного класса. Я переименовал класс и добавил новый файл в XCode.

Проблема (старый файл стал неверсированным) была в не переименованной строке комментария в начале:

//
//  MyFirstClass.m

Когда я его переименовал, проблема с неверсированным файлом была решена.

//
//  MySecondClass.m

Надеюсь, это кому-нибудь поможет.

PS Дополнительно возможно потребуется удалить и скопировать эти файлы.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.