I have been recently versioning my product (exe) and increasing the build number each time in assemblyinfo.cs.
Works great, my product is currently on version 1.5.x.x so in increase the 4 digit each time I have a successful build.
Now I have my DLLs which are also part of my application.
How could I version these? Should I version these the same as my exe i.e, 1.5.x.x or should i create another different version number?
This is where I am currently a little confused.
When my product increases in functionality I can raise 1.5 to 2.0 but where does this leave my DLLs?
You'll probably get multiple opinions, but I would say to keep it simple and have the EXEs and the DLLs version stay in sync. I might change my opinion if you really intend to release versions of the DLLs and EXEs independently, but you don't make any mention of that as a requirement. You would take this approach if you are treating some of your files like 3rd-party components (which are released on a different schedule from the main product). But again, if you don't have this requirement, I would say just keep all the file versions in sync.
The convention I have seen work well is to use the first 3 numbers to represent the product version (major/minor etc..) and the 4th part of the version number represents the source control version (so you know exactly which source files the binary came from).
Hope that helps,
John
In my opinion you have to manage their versions separate.
Because 2 applications(EXE) can use the same DLL. What version the DLL will be ?
The DLL's version should be independent of the EXE that runs it.
In my opinion you should have only one assemblyinfo file that is shared across the application. That way it is easy to maintain it. And of course it implies you have a single version for all your assemblies which is the acceptable norm to me. refer this.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With