Советы по использованию Subversion и XCode в командном проекте - PullRequest
1 голос
/ 06 мая 2010

Я работал над проектом Xcode (iPhone) с тремя разными людьми. У нас есть проект в хранилище Subversion, но мы все еще не до конца понимаем некоторые аспекты методологии Subversion + Xcode:

1) Каждый раз, когда кто-то делает коммит на одном файле, он может появиться или не появиться в проекте других разработчиков. Даже если тот же человек создает новые файлы, он добавляет эти файлы в репозиторий и затем фиксирует эти файлы. Почему это происходит? Есть предложения?

2) Каждый человек, участвующий в проекте, не может выполнить «Зафиксировать весь проект», не причиняя значительную головную боль остальным разработчикам ... есть идеи, как это сделать?.

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

Мне нужны предложения или советы о том, как обрабатывать проект с несколькими разработчиками с использованием Subversion. Мы прочитали руководство по Subversion и много других сообщений о StackOverflow, но я до сих пор не могу найти ни одного полезного совета.

Спасибо за любой совет!

Ответы [ 2 ]

2 голосов
/ 06 мая 2010

Причина, по которой другие парни не видят изменений, заключается в том, что они не информируются, пока не попытаются выполнить «обновление», «принятие» или «изменение» в хранилище.SVN - это «вытягивающая» система, хранилище не информирует клиентов ни о чем без команды от них.

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

* 1004Настаивать на том, что только один разработчик может вносить изменения в репозиторий, - это излишне ИМХО и совершенно противоречит самой идее использования контроля версий.С тем же успехом у вас может быть только одна папка, в которую только этот разработчик может записывать каждый раз, используя инструмент сравнения.

Убедитесь, что ваши ребята выполняют цикл «Обновление», «Компиляция, Тестирование», прежде чем «Принять».Таким образом, они с меньшей вероятностью передадут код, который сломает сборку.Если они просто немного осторожны, вы все быстро освоитесь, не о чем беспокоиться.Удачи.

0 голосов
/ 06 мая 2010

Вы говорите: «Методология работы, которую мы пытаемся реализовать, заключается в том, что только один разработчик (обычно руководитель проекта) может зафиксировать весь проект, но он должен сообщить об этом остальной команде, чтобы каждый мог получить сообщение с просьбой отменить изменения и прочитать новые файлы из хранилища. " Зачем это нужно? Неужели другие разработчики не могут зарегистрироваться или недостаточно хороши для регистрации кода? Извините, что сказал это радикально: это чушь собачья. Каждый разработчик должен быть в состоянии совершить. Если вы хотите отделить разработчиков друг от друга, вы должны использовать для этого ветки. И, как уже упоминалось, связь осуществляется через svn update / svn status -u и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...