Click here to Skip to main content
15,880,392 members
Articles / Programming Languages / C#
Tip/Trick

Build solution vs. Rebuild solution vs. Clean solution Menu

Rate me:
Please Sign up or sign in to vote.
4.89/5 (44 votes)
22 Jul 2013CPOL2 min read 116.9K   17   15
I had a very vague idea, but I wanted to be sure about the exact differences between them.

I am not aware of a single day in my life when I have not clicked on the Build, Rebuild, or Clean menu of Visual Studio. Even though I use it on a daily basis or sometimes even on a minute to minute basis when my keyboard is high on coding, I am still not clear what exactly each one of these menus does. I had a very vague idea, but I wanted to be sure about the exact differences between them.

When I hunted for the differences what came out was surprising, below goes a detailed explanation of the same.

Image 1

Build solution menu

This will perform an incremental build. In other words it will only build code files which have changed. If they have not changed those files will not be touched.

Rebuild solution menu

This will delete all currently compiled files (i.e., exe and DLLs) and will build everything from scratch, irrespective of if there is code change in the file or not.

Image 2

Clean solution menu

This menu will delete all compiled files (i.e., EXE’s and DLL’s) from the bin/obj directory.

Now if you read the above three points I have discussed, you can conclude that:

Rebuild = Clean + Build

So the next question would be if you do a Rebuild and if you do Clean + Build, what is the difference?

The difference is the way the build and clean sequence happens for every project. Let’s say if your solution has two projects, proj1 and proj2. If you do a rebuild it will take proj1, clean (delete) the compiled files for proj1, and build it. After that it will take the second project proj2, clean the compiled files for proj2, and compile proj2.

But if you do a clean and build, it will first delete all compiled files for proj1 and proj2 and then it will build proj1 first, followed by proj2.

The below image explains the same in a more visual format.

Image 3

Below is a simple YouTube video which demonstrates the difference between these entities. 

Image 4

For Further reading do watch  the below interview preparation videos and step by step video series.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Architect https://www.questpond.com
India India

Comments and Discussions

 
QuestionWhen to Use Pin
Ashishmau9-Nov-15 3:19
Ashishmau9-Nov-15 3:19 
GeneralNice information at this early morning Pin
King Fisher21-May-15 18:51
professionalKing Fisher21-May-15 18:51 
You boosted me to read tips and articles more, I read your few articles its pretty clear to understand, thanks
Thumbs Up | :thumbsup: Thumbs Up | :thumbsup:
நெஞ்சு பொறுக்கு திலையே-இந்த
நிலைகெட்ட மனிதரை நினைந்துவிட்டால்

QuestionWhen should I use each? Pin
AlexWang201016-Jan-15 9:25
AlexWang201016-Jan-15 9:25 
Generaldifferences in details Pin
Xaheer Ahmed20-Nov-13 21:39
Xaheer Ahmed20-Nov-13 21:39 
QuestionInformative article Pin
Jon_Boy24-Jul-13 2:37
Jon_Boy24-Jul-13 2:37 
GeneralMy vote of 5 Pin
zahid khan12323-Jul-13 22:54
zahid khan12323-Jul-13 22:54 
GeneralRe: My vote of 5 Pin
Member 1040593829-Sep-15 2:52
Member 1040593829-Sep-15 2:52 
GeneralMy vote of 4 Pin
Arsalan Ahmad23-Jul-13 7:26
Arsalan Ahmad23-Jul-13 7:26 
GeneralMy vote of 5 Pin
Joezer BH22-Jul-13 22:18
professionalJoezer BH22-Jul-13 22:18 
QuestionGermany Business Mailing List Pin
elistxs0822-Jul-13 20:44
elistxs0822-Jul-13 20:44 
GeneralMy vote of 5 Pin
Santhosh Kumar Jayaraman22-Jul-13 17:52
Santhosh Kumar Jayaraman22-Jul-13 17:52 
GeneralMy vote of 4 Pin
S.P.Tiwari22-Jul-13 1:51
professionalS.P.Tiwari22-Jul-13 1:51 
SuggestionRe: My vote of 4 Pin
Stephen Inglish22-Jul-13 6:25
Stephen Inglish22-Jul-13 6:25 
QuestionPerformance? Pin
Sharjith22-Jul-13 1:09
professionalSharjith22-Jul-13 1:09 
GeneralGood Info Pin
sund7wells22-Jul-13 0:39
sund7wells22-Jul-13 0:39 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.