Почему вы используете задачу копирования? Я думаю, что он предназначен для локальных манипуляций во время сборки, а не для развертывания (поскольку это не дает вам возможности легко настроить поведение).
Я полагаю, что вместо копии tsak использовать один из следующих вариантов
Non-веб-приложений - использовать Robocopy: /XD dirs [dirs]...
: Исключены каталоги, соответствующие имена/путь. XF и XD могут использоваться в комбинации, например.
ROBOCOPY c:\source d:\dest /XF *.doc *.xls /XD c:\unwanted /S
см. this link для использования руководство пользователя. Вы либо запустить его из командной строки (используя <Exec Command="" >
задачу, или использовать MBuiild Community Tasksproject, который имеет хорошую обертку
веб-приложений:.. Вы должны использовать Web Deploy для развертывания Вам либо использовать интеграцию MSBuild (VS 2010 и позже, см. this blog series для руководства по настройке и настройке на VS2010 NB: в VS 2012 он был значительно упрощен, но у меня нет ссылки для обмена на данный момент) или запустить его из командной строки (до VS 2010):
<Exec Command=""$(WebDeployToolPath)" -verb:sync - source:dirPath='$(MSBuildProjectDirectory)\Published\' -dest:dirPath='$(DeployDirectoryLocalPath)',computerName=$(DeployTargetURL),userName='$(DeployUserName)',password='$(Password)',authType='Basic' -skip:skipaction='Delete',objectname='filePath',absolutepath='app_offline.htm' -skip:skipaction='Delete',objectname='filePath',absolutepath='logs\\.*' -skip:skipaction='Delete',objectname='dirPath',absolutepath='logs\\.*' -skip:skipaction='Delete',objectname='filePath',absolutepath='UserFiles\\.*' -skip:skipaction='Delete',objectname='dirPath',absolutepath='UserFiles\\.*' -verbose -allowUntrusted" />
NB, используя skip:skipaction='Delete..
, чтобы пропустить удаление файлов и папок.
Update Похоже, что я имею undestood это немного неправильно (я должен, развертывание в AfterCompile
Произошло цели, однако, как я вижу сейчас, TFS использует CoreDropBuild
цель сделать развертывание. Так я думаю, то, что вам нужно, чтобы переопределить CoreDropBuild
цель, как описано:.. here (хотя, я никогда не пробовал этого)
вы можете использовать Copy
задачу в качестве автора резьбы, или идти с Robocopy/webdeploy на основе вашего личные предпочтения
Как вы развертывание этих файлов? Вы используете определение сборки TFS, публикацию из Visual Studio или что-то еще? –
Привет Я использую определение сборки TFS. Это код для того же самого. – user2019295