Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Difference between Git and Nexus?

Tags:

I can't seem to find what the difference is between Git and Nexus. Are the two comparable?

like image 355
Dimitri Avatar asked Nov 21 '12 10:11

Dimitri


People also ask

What is difference between Nexus and Maven?

Sonatype Nexus and Apache Maven are two pieces of software that often work together but they do very different parts of the job. Nexus provides a repository while Maven uses a repository to build software. Here's a quote from "What is Nexus?": Nexus manages software "artifacts" required for development.

What is the main difference between Git and GitHub?

what's the difference? Simply put, Git is a version control system that lets you manage and keep track of your source code history. GitHub is a cloud-based hosting service that lets you manage Git repositories. If you have open-source projects that use Git, then GitHub is designed to help you better manage them.

What is the use of Nexus repository?

Nexus Repository OSS is an open source repository that supports many artifact formats, including Docker, Java™, and npm. With the Nexus tool integration, pipelines in your toolchain can publish and retrieve versioned apps and their dependencies by using central repositories that are accessible from other environments.

What is the difference between Nexus and Artifactory?

Artifactory has a slight lead in the number of supported repo types, but Nexus provides you with OSGi interfaces, enabling you to make custom repository types if needed.


1 Answers

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:

  • "How do different version control systems handle binary files?"
  • "Best practice to store .jar files in VCS (SVN, Git, …)"
  • "Using source controlled libraries in source controlled projects"

You manage what you code in Git, and what you build in Nexus.

like image 162
VonC Avatar answered Sep 21 '22 09:09

VonC