I would like to get some feedback on this idea, as I can see the pros and cons of each approach.
As a Java developer, this would be about storing jar files in the code repository, but it could easily extend to other compiled languages.
Pros:
- Can easily retrieve previous distributions, without the need to depend on (potientially no longer available) out of date tools to recompile.
Cons:
- Could quickly “bloat” the code repository, depending on the frequency of builds.
We archive releases to a directory structure, and tag the appropriate versions in source control. This gives us access to the built versions and the source that generated them.
This is easily done using build scripts to automate tagging and archiving of release builds.