12

Мы используем Team Foundation Server для нашего основного проекта. Каждый раз, когда мы добавляем нового сотрудника как на месте, так и за его пределами, нам всегда нужно вручную устанавливать ссылки.Проблемы с dll и ссылки TFS

Возможно ли, что TFS может копировать/сохранять/передавать dll's новому пользователю без необходимости устанавливать их каждый раз?

Например, я добавляю новые функции и устанавливаю DocumentFormat.OpenXml в свой проект. Настройте код, который он запускает, и отлично работает на моей машине, я публикую его, это прекрасно работает. Я проверяю все на TFS.

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

Поэтому они должны скачать DocumentFormat.OpenXml, а затем они могут создавать и запускать проект.

Есть ли способ для TFS спасти нас этим шагом?

+3

Добавить внешние зависимости к каталогу проекта в TFS. Направьте их через относительные пути. – Will

+1

@ Будет ли там документ, который может пройти меня через это? Я никогда не использовал TFS перед этим проектом, поэтому в большинстве случаев я споткнулся в темноте. –

+2

Ничего общего с TFS, действительно. В своем решении добавьте папку под названием «Зависимости». Добавьте соответствующую папку на диск в том же месте в иерархии решений (раздражает, я знаю). Добавьте зависимые внешние DLL в этот каталог. Ссылка на них в ваших проектах через относительные пути (например, ".. \ .. \ dependencies \ derp.dll"). Затем проверьте свое решение. DLL будет путешествовать с решением, и любой, кто получает последние, получает эти DLL. Это похоже на любой другой файл. Проверьте их. В любом случае вам нужно обновлять свои зависимости, как и ваш код. – Will

ответ

41

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

В вашем решении добавьте папку под названием «Зависимости». Добавьте соответствующую папку на диск в том же месте в иерархии решений (раздражает, я знаю). Добавьте зависимые внешние DLL в этот каталог.

enter image description here

Как это теперь часть решения, они будут путешествовать с раствором в систему управления версиями.

Ссылка на них в ваших проектах. Это будет выглядеть как этот

enter image description here

, но оно должно быть записано в файл решения, как относительный путь.

<Reference Include="Example"> 
    <HintPath>..\..\..\Dependencies\Example.DLL</HintPath> 
</Reference> 

Если у вас возникли проблемы с этим не быть так, то вы можете просто отредактировать файл проекта и изменить путь подсказки.

+4

Вам не нужно дважды добавлять папку, вы можете добавить ее в проводник файла, затем нажмите «Показать все файлы в обозревателе решений», затем щелкните правой кнопкой мыши папку зависимостей и выберите «Включить в проект». – majjam

Смежные вопросы