Предположим, у меня довольно большое хранилище, содержащее несколько проектов. Я действительно работаю над большинством проектов. Должна ли я иметь «одну большую рабочую копию» локально, которая берет на себя поддержку редкой функции каталога, чтобы получить то, что мне нужно, или каждый проект должен иметь свою собственную рабочую копию. Каковы плюсы и минусы?SVN-проверка нескольких проектов
ответ
Я бы сказал, два самых больших факторов, которые влияют, которые подходят принять являются:
- ли все проекты разделяют большое количество библиотек кода?
- Вы работаете над одной ветвью для всех проектов?
Если все отдельные проекты имеют много библиотечного кода и считаются частью одного и того же программного обеспечения, то имеет смысл иметь одну рабочую копию, поскольку она минимизирует объем перестройки и гарантирует, что внесенные изменения в одном проекте видны в другом (что минимизирует вероятность взлома сборки).
С другой стороны, если, возможно, каждый из этих проектов предназначен для другого клиента, и каждый из них имеет разные временные рамки и должен выполняться в другом филиале (проект A находится в RC-фазе и требует только showstopper bug- исправления, проект B находится в альфа-фазе и может сильно изменяться), затем перейдите к раздельному разреженному рабочему экземпляру.
Один проект, каждый из которых предназначен для каждого фиксации (и откат) для этого проекта. Также важно, если вы планируете использовать capistrano или любой другой инструмент развертывания. Также вы ограничиваете доступ к проекту.
У меня такой же сценарий. Я проверил все проекты в одной структуре вместо использования разреженных каталогов. Тогда очень просто обновить все проекты за один раз или только один проект/папку за раз, просто выбрав нужную папку и зафиксировать/обновить. Таким образом, вы получаете выгоду от каталога spase, когда вам это нужно, или полное обновление/фиксацию вместо того, чтобы делать это один за другим. Моя коллекция составляет около 5 ГБ, 60 тыс. Файлов, и для каждого уровня проекта, или для завершения, все еще очень быстро.
Как сказал @the_mandrill, это зависит от того, являются ли ваши проекты частью целостного целого, например, jar-файлов, которые объединены в одном веб-приложении Java EE.
В подобных ситуациях я использую проект зонтика, который содержит общую конфигурацию сборки и тянет дочерние проекты с помощью svn::externals
. В Java-мире это довольно хорошо сопоставимо с методами построения на основе Maven, хотя есть несколько недостатков.
Я планирую попробовать аналогичный подход с проектами и решениями Visual Studio, но до сих пор я делал простые эксперименты.
- 1. Отладка нескольких проектов одновременно
- 2. Установка нескольких проектов log4net
- 3. Конфигурация нескольких проектов Hudson
- 4. Конфигурация нескольких проектов QT
- 5. Локализация нескольких проектов
- 6. Использование нескольких проектов python
- 7. Непрерывная интеграция нескольких проектов
- 8. Создание нескольких форм путем объединения нескольких проектов
- 9. Дублируемая функциональность среди нескольких проектов
- 10. csproj для нескольких проектов построения
- 11. Gradle нескольких проектов, сфера задача
- 12. Одиночная сборка из нескольких проектов
- 13. Формирование нескольких проектов в cruisecontrol.net
- 14. TFS Pipline для нескольких проектов
- 15. ASP.NET MVC: ошибка нескольких проектов
- 16. Цветок сельдерея для нескольких проектов
- 17. Создание нескольких проектов одновременно CruiseControl.NET
- 18. Использование memcached для нескольких проектов
- 19. Выпуск нескольких проектов с мавена
- 20. создание классов для нескольких проектов
- 21. Переменная доступна для нескольких проектов
- 22. Общий проект для нескольких проектов
- 23. Упаковка нескольких проектов в один
- 24. ClueMapper для отслеживания нескольких проектов
- 25. Gradle зависимостей для нескольких проектов
- 26. TFS 2010 Публикация нескольких проектов
- 27. Импорт нескольких проектов в eclipse
- 28. Проект, состоящий из нескольких проектов
- 29. WPF - структура нескольких проектов MVVM
- 30. ASP.NET Отладка нескольких проектов - ошибка
вы по-прежнему можете совершить частичную проверку и откат частичной копии с использованием разреженной рабочей копии. – gbjbaanb
да, но это просто добавит больше работы – TomDunning