2012-03-01 3 views
1

xCode дает мне проблемы, и я пока не смог помочь себе.Commit failed: .DS_Store is not not control control

Когда я совершаю мой проект, отчеты Xcode:

Рабочая копия "[Projectname]" не удалось совершить файлы

SVN: Фиксировать не удалось (подробности ниже);

svn: '/ Пользователи/[пользовательский каталог]/[путь к проекту]/[источник dir] /. DS_Store' не находится под управлением версиями.

Забавно, что я даже не пытаюсь добавить или зафиксировать .DS_Store. Во всяком случае, я попытался разрешить эту ошибку, удалив .DS_Store с помощью finder (очень бесполезно, всплывает снова сразу после его убийства) и командной строки (менее бесполезно, но все равно не повезло).

Тогда я следовал этому советую http://soledadpenades.com/2009/07/02/keeping-ds_store-files-at-bay/ добавить .DS_Store в мой список игнорируемых, как в директории проекта и все подкаталоги с помощью

svn propset svn:ignore .DS_Store . 

Однако я признаю, что я не знаю точно, что я был делаю. Я долгое время использовал SVN в Windows исключительно с пользовательским интерфейсом Tortoise и ощущал подходящее количество стыда за то, что не обладал достаточными навыками командной строки svn.

После игнорирования ошибка выглядит следующим образом:

Уокинг копия "[Projectname]" не удалось совершить файлы

SVN: Фиксировать не удалось (подробности fllow):

svn: Файл или каталог '.' устарел; попробуйте обновить:

svn: ресурс устаревший; попробуйте обновить:

Я думаю, что это произойдет, если вы будете следовать совету из Интернета вслепую без достаточного уровня понимания (позор мне).

Выполнение обновления не делало ничего, все файлы были в курсе событий.

Потому что я не хочу делать вещи хуже, чем они есть сейчас, я смиренно прошу о помощи у вас замечательных парней и девушек.

Спасибо, Крис

Ответ Принудительная фиксация от терминала. После этого использование управления исходным кодом в xCode снова улучшилось.

+0

«Файл или каталог». устаревшее, попробуйте обновить «средства (как написано) - вам необходимо обновить рабочую копию перед фиксацией (кто-то совершит репо, и у вас нет этой версии) –

+0

svn propset svn: ignore (-R в корневой папке сэкономить некоторое время для выполнения рекурсивной операции) отметьте все файлы .DS_Store внутри WC как «не заинтересованные» для SVN - статус, фиксация, ..., операции не будут показывать эти файлы вообще в списках файлов –

ответ

2

Mac OS хранит дополнительную информацию в .DS_Store. Вот почему вы не можете удалить папку: ей это нужно.

Вам нужно сообщить SVN, чтобы игнорировать папку. Это то, что вы сделали.

По какой-то причине, редактирование svn:ignore имеет побочный эффект, что папка «не синхронизирована» (независимо от того, что это означает).

Решение здесь для обновления папки: svn up . с терминала. После этого вы можете зафиксировать новое свойство.

После перезапуска Xcode все должно быть хорошо.

Попробуйте изменить список игнорирования изнутри Xcode в следующий раз, он может сделать необходимую магию для вас.

+0

Спасибо за помощь :-) – Chris