因為之前寫的程序比較小,編譯起來比較快,所以一直都沒有太在意 Build 和 Rebuild 之間的區別,后來發現兩個還是有很大不同。
Build 只針對在上次編譯之后更改過的文件進行編譯,在項目比較龐大的時候,Build 還是很有優勢的。
Rebuild 會編譯所有文件,一般相當於執行 Clean + Build(清理並生成)。
無論 Build 和 Rebuild,都可以分別針對解決方案和項目。當目標是解決方案的時候,那么 Build 或者 Rebuild 的目標就是解決方案中所有的項目。
Build 編譯的范圍包括有更新的 Projects 以及依賴這些 Projects 的項目。
一般推薦使用 Build 或 Clean+Build。
注意,Build 所檢測的是項目中的改變,主要是源代碼;如果刪除編譯生成的 dll 或者 exe 文件,那么再次進行 Build 並不會導致新的編譯。(沒有試過,如果資源文件發生改變是否會引起第二次編譯)
有一種說法是 Rebuild 會更新項目的 xml-documentation 文件,但是 Build 不會。
最后,在 Visual Studio 2008 中:
Build Solution 的快捷鍵是 F6,
Build Selection 的快捷鍵是 Shift+F6,
Cancel Build Process 的快捷鍵是 Ctrl+Break ;
而在 Visual Studio 2010 中:
Build Solution 的快捷鍵是 F7 (或者 Ctrl+Shift+B),
Rebuild Solution 的快捷鍵是 Ctrl+Alt+F7
Build Selection 的快捷鍵是 Shift+F6,
Cancel Build Process 的快捷鍵是 Ctrl+Break ;
不知道為什么要有一個 F6 和 F7 的區別?
本文參考了一下文章或鏈接: