DEV Community

Cover image for Git for All Developers: Essential or Optional?
dev.to staff for The DEV Team

Posted on

Git for All Developers: Essential or Optional?

Hey fellow developers! Let's talk Git. Do you think all developers need to know it? Share your thoughts on the benefits of using version control in a collaborative coding environment. If you used Git, How has it transformed your development process? Join the discussion!

Follow the DEVteam for more discussions and online camaraderie!

Image by pch.vector on Freepik

Top comments (13)

Collapse
 
thomasbnt profile image
Thomas Bonnet

Git is essential for my part, if you work alone or with team, this is the same response.

Essential for :

  • Have a history visible
  • Reduces the time you spend collaborating on code
  • Revert to an earlier version if there's a problem
  • The simplicity to git pull on your server for deployment
  • And many more
Collapse
 
thallesrangel profile image
Thallesrangel

I agree
git is a basic tool for anyone.

Collapse
 
mellen profile image
Matt Ellen

Git is very prevalent. Is it essential? At my job, no. We use SVN.

At my previous job? No, they used mercurial.

What is essential is source control. I'm not sure who I'm quoting but, "it's not code until it's in a repository."

Collapse
 
thallesrangel profile image
Thallesrangel

I believe when there's a code

Collapse
 
jameslau profile image
James Lau • Edited

As a developer, it is essential. Regardless if you are working on a website or an app. It is critical to maintain code order not just with yourself, but eventually with a larger team.

I worked for a small company a few months back and they didn't use Git to track any of their client work. They also didn't use proper procedures to manage code files and folders on the server. I was FTPing most of the time!

Collapse
 
gaurang847 profile image
Gaurang

In my perspective, Git is undeniably indispensable when collaborating within a team. Considering that it's very likely that you and other team members will be working on same files, Git provides an essential safeguard against losing valuable changes. Git enables you to see the exact difference between any version of the file - your current version, your colleagues current version, your previous version, or even the state of the file on a specific date and time, such as March 1, 2021, at 10 am. Also, it allows you to easily identify the author responsible for each change.
You gain 20/20 visibility on each change happening to the project. Without Git, it's like you're blindfolded.

Even if you're working alone, Git is essential because it provides you a detailed record of your modifications. It allows you to easily go back to a previous version of your project. As your code evolves over time, Git history can offer precise insights into the specific changes made at each stage.

However, it's important to note that Git is not a magic bullet. To fully harness its benefits, it requires a mindful approach. Neglecting proper Git practices can undermine its advantages.
For instance, if you don't write good descriptive commit messages, it becomes challenging to locate specific changes within commits. Similarly, pushing substantial modifications without regularly pulling updates can lead to numerous merge conflicts. Thereby, increasing the risk of inadvertently losing code while resolving the conflicts.

Collapse
 
jmfayard profile image
Jean-Michel (jmfayard.dev) • Edited

Are you talking about

  • git aka the concepts of distributed version control
  • git aka the command-line tool

The first is everywhere in the industry and for once I agree that EVERYONE MUST LEARN IT

Learn git concepts, not commands - DEV Community


OTOH I think that the $ git CLI is optional,

Poor UX and lots of quirks.
It makes sense to learn the basic.
It makes sense if you are ready to go all in and learn all its quirks.

In the middle on the other hand, I think it's a poor investment of your time.

In the end it's a matter of personal choice.

Collapse
 
tobhai profile image
Tobias Haindl • Edited

Version control is definitely a must-have even if you are working alone on a codebase. To quote the "The Developer Manifesto" :

Embrace version control. It is your safety net.

Collapse
 
ivorator profile image
ivorator

Yes and no.
Git is essential. I don't think I do even the most basic of things without git. I'd say one should "learn" it before they even learn coding.
But you don't need to know horribly much about it, and you'll end up using some GUI plugin for your IDE. 99% of the time you'll be using the same basic commands over and over again.

Collapse
 
miraclechibuike profile image
MiracleChibuike

I think it's essential for all developers especially for junior developers. It helps me to track and maintain code changes fairly easily and enhances my performance than other tools. It's the tool they used to teach us while I was learning to code newly and almost everyone in the organization use it.

Collapse
 
fadygrab profile image
Fady GA 😎

Git is essential for developers?! This is like asking "do you have to drink water?" πŸ˜…
I use git for everything that need lineage tracking, code or otherwise!

Collapse
 
liyang51827 profile image
Yang Li

I think it's a prerequisite skill/knowledge for developers.

Collapse
 
mainarthur profile image
Arthur Kh

Git is essential even for not development. I use it to manage my notes