GitLab vs Sonatype Nexus: What are the differences?
What is GitLab? Open source self-hosted Git management software. GitLab offers git repository management, code reviews, issue tracking, activity feeds and wikis. Enterprises install GitLab on-premise and connect it with LDAP and Active Directory servers for secure authentication and authorization. A single GitLab server can handle more than 25,000 users but it is also possible to create a high availability setup with multiple active servers.
What is Sonatype Nexus? The world's best way to organize, store, and distribute software components. Deliver better, safer software even faster with software supply chain automation.
GitLab can be classified as a tool in the "Code Collaboration & Version Control" category, while Sonatype Nexus is grouped under "Java Build Tools".
GitLab and Sonatype Nexus are both open source tools. GitLab with 20.1K GitHub stars and 5.33K forks on GitHub appears to be more popular than Sonatype Nexus with 527 GitHub stars and 237 GitHub forks.
According to the StackShare community, GitLab has a broader approval, being mentioned in 1234 company stacks & 1479 developers stacks; compared to Sonatype Nexus, which is listed in 49 company stacks and 16 developer stacks.
Do you review your Pull/Merge Request before assigning Reviewers?
If you work in a team opening a Pull Request (or Merge Request) looks appropriate. However, have you ever thought about opening a Pull/Merge Request when working by yourself? Here's a checklist of things you can review in your own:
- Pick the correct target branch
- Make Drafts explicit
- Name things properly
- Ask help for tools
- Remove the noise
- Fetch necessary data
- Understand Mergeability
- Pass the message
- Add screenshots
- Be found in the future
- Comment inline in your changes
Read the blog post for more detailed explanation for each item :D
What else do you review before asking for code review?
Using an inclusive language is crucial for fostering a diverse culture. Git has changed the naming conventions to be more language-inclusive, and so you should change. Our development tools, like GitHub and GitLab, already supports the change.
SourceLevel deals very nicely with repositories that changed the master branch to a more appropriate word. Besides, you can use the grep linter the look for exclusive terms contained in the source code.
As the inclusive language gap may happen in other aspects of our lives, have you already thought about them?
One of the magic tricks git performs is the ability to rewrite log history. You can do it in many ways, but git rebase -i
is the one I most use. With this command, It’s possible to switch commits order, remove a commit, squash two or more commits, or edit, for instance.
It’s particularly useful to run it before opening a pull request. It allows developers to “clean up” the mess and organize commits before submitting to review. If you follow the practice 3 and 4, then the list of commits should look very similar to a task list. It should reveal the rationale you had, telling the story of how you end up with that final code.
Pros of GitLab
- Self hosted488
- Free415
- Easy setup234
- Nice UI105
- CI2