2013-05-08 15 views
5

nie mogę msdeploy pominąć tylko root web.config (chcę zachować wszystkie pliki web.config, które istnieją w folderach podrzędnych poniżej root)MSDeploy Pomiń korzeń web.config

Jest to parametr Używam:

-skip:objectName=filePath,absolutePath=^\\web\.config 

próbowałem ^\\web\.config, \\web\.config i bezwzględna ścieżka do pliku, np: C:\\Some Path\\web\.config. Żadne z nich nie działa.

Odpowiedz

2

Udało mi się to rozwiązać.

Trzeba korzystać z pełnej źródłowy ścieżkę, aby pominąć tylko cel korzeniowy web.config. msdeploy wydaje się używać ścieżki źródłowej dla tego filtru wyrażeń regularnych.

tak:

-skip:objectName=filePath,absolutePath=\\\\servername\\c\$\\syncpath\\web\.config 

Nadzieja pomaga to ktoś inny się w przyszłości.

EDIT - INFORMACJE DODATKOWE

Poza tym, jeśli plik web.config pomijanie w podkatalogu trzeba również, że dir docelowy i web.config w regex, tak:

To zatrzyma msdeploy przed wydaniem dyrektywy delete na docelowym pliku web.config.

Należy pamiętać, że w porównaniu do wyrażenia regularnego wielkość liter jest niewrażliwa.

+0

Jak to zrobić bez podania pełnej ścieżki? –

+0

Możesz użyć ścieżki względnej, ale nie ma to sensu, jeśli kopiujesz z innego serwera – Rots