Способ включения внешнего проекта с контролем версий в другой - PullRequest
0 голосов
/ 21 декабря 2009

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

Поскольку внешний проект svn: игнорирует папку bin \ release, я не думаю, что могу использовать svn: external.

Сборка последней версии и копирование через библиотеки DLL, похоже, подвержены ошибкам.

В этом случае я хочу включить HtmlAgilityPack из codeplex, так что любой пример, ссылающийся на этот проект, будет хорошим (https://htmlagilitypack.svn.codeplex.com/svn).

Ответы [ 2 ]

1 голос
/ 21 декабря 2009

Это именно то, для чего svn:externals. Поскольку исходный код предоставлен в другом хранилище, вам нужно будет добавить новый проект в ваше решение, которое будет создавать этот источник, а не включать библиотеки DLL.

Кроме того, не забывайте о лучшей практике связывания с конкретной ревизией внешнего репо (в отличие от HEAD), чтобы вы могли контролировать, когда и когда обновлять свою копию их кода.

EDIT

Учитывая структуру целевого хранилища

/Branches
    1.3.0
    1.4.0
/Release
    1_4_0_beta1
    1_4_0_beta2
/Trunk

Я бы связался с чем-то в папке Release, например,

/Release/1_4_0_beta2/HtmlAgilityPack

Вы также можете указать номер ревизии в качестве защиты от непредвиденного изменения чего-либо, но это тег, и поэтому они вряд ли обновят его & mdash; они просто сделают новый тег.

0 голосов
/ 21 декабря 2009

Похоже, в принципе, svn:external это именно то, что вам нужно. Конечно, репозиторий, на который вы ссылаетесь, должен каким-то образом предоставлять файлы. Если этого не произойдет, я думаю, вы не собираетесь как-то скачивать и копировать их на уровне сценария.

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