2016-03-13 3 views
0

Я создал несколько проектов Xcode, которые разделяют различные подмножества модулей. Я смутил себя, пытаясь убедиться, что я использую правильную версию (обычно ищущую самую зрелую версию) определенных модулей в различных проектах. Source Control выглядит как логическое решение, поэтому я начал его использовать. 1) Могу ли я подключить несколько проектов Xcode к одному центральному/главному репозиторию? (Различные сообщения о переполнении стека подразумевают, что это можно сделать, но я не могу заставить Xcode Source Control делать это.) 2) Могу ли я затем # включить другой поднабор модулей из этого главного репозитория в каждый другой проект? (Я понимаю, как избирательно менять комитеты.) 3) Представляю ли я разумный подход к моему сценарию или у вас есть лучшее предложение?xcode source control репозиторий для нескольких проектов

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

Спасибо! Nick

+0

Вы уверены, что не путаете VCS с зависимостями? – Harmelodic

+0

Harmelodic: Поскольку я не уверен, что понимаю ваш вопрос, поэтому, я думаю, мой ответ должен состоять в том, что я действительно смущен. Я полагаю, что «VCS» означает «система управления версиями», верно? И я полагаю, что в «Зависимости» вы подразумеваете эквивалент #includes в проекте C? Я ищу довольно простой способ управления как между несколькими проектами Xcode. Xcode Project P1 # включает функции A и B. Второй проект Xcode P2 состоит из B и C. Как лучше всего вытащить самую зрелую версию B в P2? Если я изменю B, как лучше всего вернуть его в P1? –

+0

Вы правы в своих предположениях. Зависимости управляются менеджером зависимостей. Итак, для проектов Xcode/Cocoa вы можете использовать CocoaPods или Carthage. Управление источником управляется VCS, например Git или SVN. Предполагая, что эти 2 проекта являются модулями из 1 приложения, для управления вашими зависимостями вам потребуется менеджер зависимостей, а также VCS, такой как Git, для управления исходным кодом. Если проекты представляют собой 2 отдельных приложения, для каждого проекта потребуется менеджер зависимостей, а для каждого проекта - VCS (если вы не используете подмодули Git). – Harmelodic

ответ

0

Запрет любых лучших идей. Я создал «главный» репозиторий в новом проекте Xcode. Когда я создаю новые подпроекты, я запускаю их как ветви от мастера. Когда я создаю новые функции в ветвях, я периодически выборочно сливают их в мастер. Точно так же, когда я исправляю ошибку в существующей ветке/функции I выборочно, объедините ее обратно в мастер. Я не удаляю отдельные ветви (если я действительно никогда не хочу использовать их снова). Если я удалю функцию из определенной ветви, я не соглашусь с этим изменением при слиянии с мастером. Таким образом, мастер должен оставаться всеохватывающим. Если я снова открою ветку, которую я не использовал некоторое время, мой план состоит в том, чтобы «слить с» мастера (очень выборочно), чтобы убедиться, что я обновил эту ветвь для последующих исправлений ошибок. (Я не пробовал все это, но до сих пор так хорошо.)