lightbulb432 wrote:

So if you are making minor revisions of your source repository all the time,
does that mean your module repository is going to get enormous (because
everytime you make a tiny change in your source, that classifies as a new
module altogether, and the entire project gets put in its packaged form into
the Maven repo?)

Yes, meaning that at some point you might want to remove very old artifacts and archive them away somewhere, when you are sure they will never be needed again.

Practically speaking though, it is unlikely in most cases you would ever need to do this, as compared to typical disk partition sizes, and typical jar sizes, it takes an awful lot of versions before this becomes a problem.

What's the best practice regarding what people generally do? Do they only
put their source code into the Maven repo as a module when its a release,
rather than just another change as part of the development process?

All our source code goes into version control, and source releases are tagged in version control.

We have a company-private maven repository in the form of a webserver that contains all our jar releases over time. This serves as a record of all artifacts that ever went into uat or production.

This repository doesn't contain any snapshots, although it is possible to host snapshots in a repository if you want to (just watch the disk space).

This means that we have at any time, both the source code, as well as the resultant binaries as released, for all modules we maintain. Source under version control, binaries in a maven repository.

Maintaining all of this sounds frightening, however maven plugins exist that automate many of the tasks associated with making releases and deploying them places.

This helps you avoid many of the pitfalls involved in managing releases properly, the chief pitfall being developers who bypass your rules for releases and do their own thing.

Regards,
Graham
--

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to