2010-04-08 154 views

回答

10

是的,我一般就這麼做所有的時間。正如Harry所說,它減少了磁盤空間的使用。這對我來說並不是什麼大問題,因爲磁盤空間非常便宜,但它可能會成爲您的擔憂。我這樣做的真正原因是爲了更好地反映部署的外觀。最好的辦法是有一個property sheet,它將輸出目錄修改爲$(SolutionDir)/build/bin。在此之後,我將工作目錄設置爲$(SolutionDir)/build,這是與將要部署的完全相同的整個結構,而不是在各個項目目錄之間展開。總的來說,爲構建事物(而不是源代碼)提供一個獨立的目錄是一件好事。它簡化了編寫自定義生成步驟,因爲你知道那裏的總產量會,並簡化集成與你的版本控制系統,因爲你可以將其設置爲忽略整個目錄,而不是繞來繞去的所有.exe設置ignore.lib.so.dll以及任何一個小目錄。

+0

正如一個音符,我真正的一點是更多有關Visual Studio正在採取相同的文件複製周圍複雜的依賴關係的時間 - 的磁盤空間量是種輔助。但我想我的答案措辭給了每個人同樣的重量。 – 2010-04-15 00:28:34

2

主要的原因我改變我的輸出目錄是削減重複的組件數量和文件副本的Visual Studio必須做出的數量。如果項目A引用項目B,項目C引用項目A和B,則Studio必須構建A,將A複製到B並構建B,然後將A和B複製到C並構建C.現在,您有3個副本A,程序集B的兩個副本,以及一個C.將輸出指向單個目錄,Visual Studio只需構建A,然後B,然後C。隨着項目數量和依賴關係的複雜性增長,您可以想象一個構建會消耗多少磁盤空間和時間。

0

作爲一個例子我有一個應該與「其他」程序被分發的updater.exe。所以我將構建路徑設置爲「其他」程序構建路徑。這樣我知道我總是有最新的「updater.exe」它應該在哪裏。

那只是一個原因。