There are both referential:
- one (Git) is a source referential for version control (with features like merging, branching, tags)
- the other (Nexus) is an artifact referential for any delivery (binaries or not)
The referential database differs also:
- Git has its own internal repository storage mechanism
- Nexus is simply a collection of shared directories with a naming convention ( group.artifact.version ).
As described in "What is a repository": a collection of binary software artifacts and metadata stored in a defined directory structure.
The idea is that, for large deliveries that can be produced quite often, it is much easier to store them in Nexus ( you can clean them easily enough: cd
+ rm
), as opposed to version them ( which makes a DVCS repo like Git way too big way too fast to be cloned easily ).
So their goals are different, as I explain in:
You manage what you code in Git, and what you build in Nexus.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…