2009-04-22 9 views
2

是否可以排除Web項目中的文件夾被髮布?我們已經獲得了一些包含在特定項目文件夾中的文檔和腳本,並將其添加到項目中,但是當我發佈VS時,我不希望它們進入生產服務器。不要在ASP.NET中發佈特定文件夾

我知道他們不應該在這個項目,但我想我會找到一個解決辦法之前,我試圖說服店主修改他做事情的方式。

+0

此問題類似於以下內容 - http://stackoverflow.com/questions/41715/excluding-a-folder-from-source-control-in-an-asp-net-website - 我認爲解決方案在和它自己是一樣的。 – rjzii 2009-04-22 19:50:50

回答

2

這並沒有完全回答你的問題,但我的感覺是,除非你是一個單獨的開發者發佈到服務器,否則你最好在使用MSBuild(或其他建築物)的專用工作站或服務器上構建並直接部署解決方案)(從而能夠非常細緻地控制生產過程)。 MSBuild不僅可以構建,而且可以使用一些擴展(包括開源類型),它也可以部署。微軟在beta版中有一款名爲MSDeploy的產品,這可能是一個更好的選擇,但沒有經驗,我不能肯定地說。

在我們的情況,我們有一個虛擬工作站作爲構建盒,而我們所要做的就是對啓動MSBuild項目批處理文件雙擊。它使用VSS標記所有代碼,獲取最新版本,構建解決方案,然後將其部署到兩臺服務器。我們正是部署我們想要部署的東西,而不是更多。我們對此感到滿意。

唯一的缺點,如果它可以被認爲是一個缺點,就是我們中至少有一個必須學習如何使用的MSBuild。 VS本身使用MSBuild。

+0

這是有道理的。我希望能夠像右鍵單擊一樣,「不要部署此文件夾」,但我想我們需要更多結構化的東西。通過Visual Studio部署到FTP服務器就像是拔牙一樣,所以我們最好用這條路線。 – SqlRyan 2009-04-22 20:58:02

0

您是否可以通過Visual Studio將它們排除在項目之外,以阻止它們發佈。他們仍然在文件系統中

0

存在,你可以做到這一點,據我所知是從項目中排除,不發佈的唯一辦法,然後再重新將其包含在項目中。這可能是一個問題。

1

對於你不想去的文件,在循環性能和「複製到輸出目錄」設置爲但是「不要複製」

此選項不適用於目錄。

+1

是不是輸出目錄/ bin? – 2011-06-30 09:04:55

0

可能有更好的方法來解決這個問題,但是,當我們發佈構建我們開發者的服務器,我們將構建完成後,除去未所需的文件夾和web.configs(所以當運行一個批處理文件我們不覆蓋已經部署的那些)。

3

老問題,但我發現,如果我標記文件夾hidden在Windows資源管理器,它不顯示/在你的解決方案發布。

這是很好的例子,用於阻止原始photoshop圖像被包含在未使用且很大的上傳中。儘管您可能想編寫自己的發佈工具,但任何更復雜的內容都是可以的。

0

選擇所有不應發佈的文件。

進入屬性 設置 生成操作 - >無

enter image description here

不得不重複該過程的每個子目錄。

相關問題