views:

25

answers:

1

Should the WEB-INF/lib directory and it's contents be versioned by a VCS?

+2  A: 

If you can easily rebuild its content, I would argue against versioning it.

Considering one of the main goals of a VCS (manage the history and get the delta between one version and the other), the history and delta of binaries is often not well managed in a VCS.

those binaries are best referenced through an artifact repository (like Nexus), where a building script (like Maven) can access and copy them where they are needed (like a WEB-INF/lib directory for instance).

VonC
Nexus: http://nexus.sonatype.org/, Maven: http://maven.apache.org/
VonC
I already use maven. But there is a bug or sth. leading to that eclipse wtp does not deliver the dependencies to tomcat when you start it out of eclipse. I have to research this again, maybe its fixed now. But there may be other reasons to just put your libs there, the old way. Also I don't think, that the libs will be changed themselves, but may be changed to another version.
PageFault
Well summarized. +1
Pascal Thivent
@Pascal: thank you, Sir. I've got 8 years of binary history in a VCS (ClearCase), so it is a very sensible topic for me ;) I now manage a Nexus pro repo precisely for that, as well well as the rest (Hudson, FishEye/Crucible, Sonar), and other VCS (SVN, Git).
VonC
Wow, that ClearCase repo must be a huge beast. The other parts of the mentioned infrastructure look sexier :D
Pascal Thivent