В целом, я бы сказал, что первый шаг - хорошее понимание того, как использовать svn в среде командной строки.Существуют некоторые основные операции (тегирование, установка свойства ignore), которые трудно (невозможно?) Выполнить в XCode (по крайней мере, в XCode 3).Для разработчика, который знаком с тем, как использовать svn в универсальной среде Unix / Linux, им не так много нужно изучать, что специфично для XCode - просто исключите каталог build
и файлы настроек XCode для каждого пользователя (см. Ниже).
(1.) Неверно.Там нет причин, ваши изображения и т. Д. Не могут быть включены в SVN.Обычная настройка XCode будет состоять в том, что ваши изображения (и т. Д.) Будут находиться в папке «Ресурсы» в источнике и будут скопированы в образ приложения как часть фазы «Копирование ресурсов комплекта» сборки XCode.
Вся папка проекта XCode должна быть включена в svn, со следующими исключениями:
- каталог 'build'
- настройки / история XCode для каждого пользователя в AppName.xcodeproj/*.pbxuser и AppName.xcodeproj / *. mode1v3
Скорее всего, вы захотите сказать svn игнорировать эти каталоги, выполнив что-то вроде:
svn propedit svn:ignore .
(2.)без причины вещи должны происходить "необъяснимо".Если ничего другого, запустите руководство svn update
в окне терминала, и оно точно скажет вам, какие файлы оно обновило.
(3.) Стандартная практика - иметь "trunk", "tags" и"ветки" каталогов в корне.Магистраль - это то, с чем вы обычно работаете, поэтому первый шаг, который должен сделать новый разработчик, - проверить последнюю версию «магистрали»
svn co svn+ssh://host.com/repository/AppName/trunk AppName
. После внесения некоторых изменений сохраните их в репозиторий с помощьюsvn commit
(или «Подтвердить изменения ...» в меню «SCM» XCode).Получить изменения, сделанные другими разработчиками с помощью svn update
(или «Обновить до» в XCode).
Чтобы отметить выпуск, скопируйте trunk
в tagname
:
svn cp svn+ssh://host.com/repository/AppName/trunk svn+ssh://host.com/repository/AppName/tags/version1
(4.) У меня нет опыта работы с Hudson, поэтому я не могу это прокомментировать, хотя «отсутствующий xcodeproject» звучит так, как будто каталог svn может отсутствовать в каталоге AppName.xcodeproj.