Использование Subversion в Xcode - PullRequest
25 голосов
/ 12 октября 2009

Похоже, что все начальные результаты Google для " с использованием subversion с xcode " на самом деле являются просто учебными пособиями по установке и настройке SVN и XCode, в отличие от с использованием двух (то есть взаимодействие с SVN через графический интерфейс XCode).

Кто-нибудь знает хорошее руководство, которое учит хитростям работы с svn через графический интерфейс Xcode? Что-то, что устраняет разрыв между самой превосходной версией контроля с книгой Subversion и IDE Xcode (как в чистом графическом интерфейсе Xcode без любой команды терминала)?

Изменить:

Нам всем нравятся наши терминальные команды, и мы все любим Eclipse, но (и я имею в виду это наилучшим образом) ни то, ни другое на самом деле не является вопросом вопроса. Я бы предпочел использовать svn через IDE XCode вместо терминала, как я предпочитаю (ну, в данном случае) кодировать в IDE XCode вместо использования vim и gcc. Инженеры Apple потратили немало времени на внедрение этого меню SCM в Xcode; кто-то должен был видеть руководство по использованию где-то .

Ответы [ 10 ]

10 голосов
/ 20 октября 2009

Я использовал эту страницу в качестве справочного материала для настройки моих проектов XCode с SVN. Это хорошая отправная точка, но я кратко расскажу о том, что я сделал (поскольку эта страница на самом деле не так уж полезна!).

Пара замечаний: я использую XCode 3.1.2 и Subversion 1.4.2. Я слышал о проблемах с использованием SVN 1.5, но есть способы обойти это, в которое я не пойду.

Во-первых, у меня уже есть репозиторий, а потом я создал проект XCode.

  1. В XCode вам необходимо настроить его так, чтобы он знал о вашем хранилище с помощью вкладки SCM в окне настроек. Введите:

    1. Имя (это произвольно и используется для ссылки с XCode)
    2. Схема (http или svn)
    3. Хост (т.е. svn.example.com)
    4. Путь (точный путь к хранилищу SVN, расположенному на хосте)
    5. Порт (только если он не используется по умолчанию)
    6. И имя пользователя и пароль, используемые для доступа к хранилищу.

    URL будет заполняться автоматически при вводе других полей. Нажмите «ОК», когда все поля в порядке, и XCode сообщает, что может подключиться.

  2. Затем откройте свой проект и выполните «Получить информацию» (круглый синий значок с восклицательным знаком) на самом проекте. На вкладке «Общие» внизу внизу есть опция для SCM, выберите репозиторий, который вы создали в 1, и закройте окно.

  3. Теперь откройте SCM в строке меню и перейдите в «Хранилища». Надеюсь, вы правильно создали свой репозиторий, используя ветки, ствол и другие каталоги на базовом уровне, потому что XCode не поддерживает извлечение корневого каталога. Поэтому перейдите по одному каталогу за раз вниз по списку, нажмите кнопку «Оформить заказ» и выберите каталог, в который вы хотите его зайти (я рекомендую каталог «Код», «Источник» или «SVN» внутри каталога вашего проекта XCode). Вы не можете извлекать несколько каталогов одновременно, но вы можете указать следующему каталогу оформить заказ до завершения первого и XCode поставить в очередь команды.

  4. Как только это будет сделано, вернитесь в окно вашего проекта XCode и "Добавить -> Существующие файлы ..." в ваш проект. Выберите каталог, в который вы заархивировали репозиторий, и я рекомендую использовать опцию «Создать ссылки на папки» вместо опции «Рекурсивно создавать группы», поскольку добавленные и удаленные элементы будут автоматически отражаться в ссылке на папку, а не в группе.

Теперь вы импортировали свой SVN-репозиторий в проект XCode. Отсюда каждый раз, когда вы вносите изменения, просто щелкните правой кнопкой мыши (Control-Click, если у вас есть только 1 кнопка) в файле и в нижней части контекстного меню находятся параметры SCM для сравнения, фиксации, обновления и удаления (отмены). ) файл. Вы также можете использовать меню SCM в строке меню для обновления / фиксации / возврата файлов или всего проекта.

6 голосов
/ 14 октября 2009

Я комментирую the_mandrill , поддержка SVN из XCode очень ограничена, особенно если вы привыкли к Eclipse.

Я также не понимаю, почему всем нужны визуальные клиенты. Я держу окно терминала открытым в каталоге моего проекта, и у меня нет проблем при взаимодействии с SVN из командной строки.

5 голосов
/ 14 октября 2009

Я знаю, что это не совсем то, что вы просили, но я бы не стал полагаться на использование SVN из XCode, поскольку то, что вы можете с ним делать, очень ограничено. Это полезно для возможности делать различия или аннотировать непосредственно из IDE, но не намного больше. Я не думаю, что это может заменить использование отдельного отдельного клиента, такого как SmartSVN или Версии.

Вы также должны перепрыгнуть через количество обручей , чтобы заставить Xcode работать с SVN версии 1.5 и выше, так что об этом нужно знать перед установкой автономного клиента. Если сомневаетесь, сначала проверьте песочницу.

3 голосов
/ 04 сентября 2010

Вот один из лучших руководств по настройке Subversion в XCode - http://iphonedevelopment.blogspot.com/2009/03/version-control-is-your-friend.html

Он также учит даже создавать хранилище в локальном MAC.

2 голосов
/ 28 апреля 2010

У многих людей возникают проблемы с использованием встроенного svn-клиента, особенно для запуска нового проекта в svn и того, что он работает.

Я создал прямолинейное руководство о том, как это сделать, вместе с очень известной ошибкой (работает для Xcode вплоть до последней версии xcode, включая Iphone 4 sdk)

http://www.sodeso.nl/?p=599

2 голосов
/ 14 октября 2009

если вы хотите работать с svn через графический интерфейс, тогда я предлагаю вам использовать плагин eclipse + subclipse (который имеет больше функций и гораздо надежнее и проще, чем svn на xcode) ..

вы будете работать в xcode как обычно, но вы будете использовать eclipse только в качестве svn-клиента (создав общий проект в eclipse и сделав его указателем на каталог вашего проекта xcode)

и вот учебник о том, как установить subclipse

1 голос
/ 30 августа 2012

Я сам искал несколько хороших ресурсов, и одним из лучших, что я нашел, является совсем недавнее видео с WWDC 2012:

Войдите, если это не так: https://developer.apple.com/videos/wwdc/2012/

Тогда есть видео под названием: Сессия 411 - Управление исходным кодом в Xcode

Объясняет, как использовать контроль версий как с GIT, так и с Subversion. Это действительно приятно!

Надеюсь, это поможет!

0 голосов
/ 05 апреля 2012

С XCode4 вы можете выполнять практически все задачи SCM из самой IDE, это большой шаг вперед.

Вот ссылка на официальный путеводитель: http://developer.apple.com/library/mac/#documentation/ToolsLanguages/Conceptual/Xcode4UserGuide/SCM/SCM.html#//apple_ref/doc/uid/TP40010215-CH7-SW26

К сожалению, вам по-прежнему приходится использовать командную строку терминала для добавления нового проекта в SCM , это также четко задокументировано по ссылке выше.

Что вам не нужно сказать, так это то, что вам необходимо вручную добавить инструкции игнорирования в конфигурацию SCM в противном случае вы в конечном итоге получите пользовательские настройки и создадите выходные данные в своих репозиториях. В настоящее время я выясняю список, и я обновлю этот ответ, как только я его завершу.

PS: Я знаю, что этот вопрос довольно старый, но я добавил его для тех из вас, кто приезжает сюда и ищет ответы, как я.

PPS: Терминальная командная строка увеличивает вероятность человеческой ошибки, занимает больше времени, является более сложной и менее прозрачной для конечных пользователей. В целом отсутствие возможности добавлять проекты в SCM из XCode - плохой дизайн, я ожидал лучшего от Apple, которая обычно хорошо упрощает пользовательский интерфейс. Для поклонников командной строки вы можете почувствовать L337, но попробуйте управлять командой программистов и нести ответственность за их код, командная строка не ваш друг.

0 голосов
/ 21 октября 2009

Я сталкивался с этим - понятия не имею, насколько хорошо они работают, но хотел бы добавить несколько ресурсов, если смогу:

0 голосов
/ 19 октября 2009

Как уже упоминалось во многих других ответах, svn-клиент с Xcode довольно слаб (и это очень мило).

Лично я считаю, что запуск Eclipse всего лишь для получения доступа к svn-клиенту довольно сложен.

Я бы предложил два ответа:

  • Используйте выделенный svn-клиент для Mac (версии и Cornerstone очень хороши, хотя и не бесплатны ... есть бесплатные, такие как svnX)
  • Если вы не совсем довольны терминалом, вы можете написать пару ключевых команд, которые вы хотите использовать, и добавить их в папку пользовательских сценариев XCode, а затем запустить их из пункта меню с помощью нажатия клавиши. так же, как если бы вы использовали собственный клиент Xcode. Существует множество примеров того, как это сделать, доступно через Google.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...