6 myths that prevent developers from using Git

Original author: Tobias Günther
  • Transfer


Now you can hardly find a professional developer who does not use a version control system (VCS) such as Git.
But there are quite a few among us who do not use VCS because of a biased opinion about version control systems.
Below are a few myths and excuses that prevent the implementation of the Git developer (or any other VCS) in the workflow.

Myth 1: I do not need Git because I backup my files


Backing up your work regularly is undeniably a good habit. I recommend leaving this habit even when you use Git.

But Git gives you a lot more advantages than just backing up your files.

Without VCS, you will run into some problems.

What do you call your backups? If you are a very organized person, then you could use some kind of understandable name system like acme-inc-redesign_2013-11-12_v23.html . However, any deviation from this concept of naming will quickly lead to confusion and, quite possibly, to problems with your code.
Let a system like Git worry about these little things so you can focus on what you do best - write code.

What part of the job should I save? Only modified files or the entire project? In the first case, it would be difficult to see the full picture of the version / version of your project at any given time. In the second case, where you regularly backup all the code, you will have a huge number of backups all over your hard drive and the more files you have, the more difficulties there will be.

The most important issue that Git solves is probably the following:

How do I find out what is the difference between backups?Very few take the time to carefully document every change they make. But Git "implies" that there is only one project. Everything else (old versions and versions) is neatly hidden in the server side of the version control system and is available at any time when they are needed. And when you need them, you can request any version at any time and you will always have a copy of the full project on hand.

In addition, you can find out with great accuracy what changes were in each file. You can tell which lines have been added, which ones have been deleted, which ones have been changed, which means that the processes of bug-tracing, emergency rollbacks to a stable or intermediate version of a project become easier.

Myth 2: Git is too complicated to bother


People often overestimate how much Git needs to know to take full advantage of it. This is so if you need to spend a lot of time to immerse yourself in the nuances of Git and teams for extremely rare cases - in fact, Git is an extremely flexible and powerful system. But the truth is that you can work productively with Git and use most of its functionality with a handful of teams.

Yes, learning something new requires a bit of work - you won’t get anywhere from it - but the benefits that you get when you start using Git significantly exceed the time and effort required to figure it out.

Learning Git will improve the quality of your projects, as well as efficiency and productivity, as a developer. In addition, you can work together with other developers in a more systematic and reliable way, providing even greater development productivity for you and your team.

Myth 3: Git for development teams only


Distributed version control systems such as Git or Mercurial allow you to work directly on the local computer. If you have a project in which you do not work with someone together, it is quite possible to perform all the tasks directly on your computer. Git provides the same benefits for a single developer as it does for a team.

You do not need a remote server or hosting to use Git and all its useful features.

But it is worth noting that the use of remote hosting code like GitHub makes sense even if you are a lone developer, in this case you will always have external copies of your code in the event of a computer breakdown or loss, or to safely synchronize your project between multiple computers (perhaps you have a working notebook and a personal computer at home that you use for development). However, this is not necessary, it is just one of the advantages.

The benefits that Git provides remain the same and it doesn’t matter if you work in a team or alone.

Myth 4: The command line is too complicated


You do not need to be an expert on the command line interface (CLI) to use Git. In fact, most developers will need very few teams.

You can learn the most important Git commands in less than an evening: we created a guide called Command Line 101 , which you can read to learn about the CLI and how it relates to Git, is part of our free online book, Learn Version Control Using Git : A Walkthrough for Absolute Beginners . "

But let's just say that a handful of basic commands are still too much for you, and indeed any contacts with the CLI. Or maybe you got a bloodshot with a friend agreement to never use the command line again, or for some reason you just can't use the CLI. You can still use Git through graphical user interface (GUI) applications. If you are on Windows, I would recommend you take a look at Tortoise Git . On Mac OS, you can take a look at Tower , an application that my company Fournova developed.

Even for users who have no command line problems, the GUI could further improve performance by making some Git tasks easier to do.

Myth 5: I'm afraid I'll break something


Everything should be quite the opposite: you should be afraid to break something if you do not use the version control system, because without it it is difficult to track all your steps and code changes.

Version control is your safety net. When everything fails completely, we can easily roll back to the previous stable version.

Using Git you can:

  • discard local changes (partially or fully)
  • restore any version if something goes wrong
  • discard the effect of any changes made in the past


And I would like to note that in my opinion the most important feature of Git: branches.

Branching provides us with a secure ecosystem, completely separate from other parts of our development project, in order to try out new features. This gives us the opportunity to experiment with the new code, see and test the effects of any changes to the code, giving us confidence that we will not affect anything outside the current branch.

Myth 6: Git is over-advertised, it's just another fashion trend that will disappear


Of course, Git is indeed not the only existing version control system. There are many other VCS that can also be considered and each has its own advantages.

But it is no coincidence that large projects such as jQuery, Rail and Linux Kernel rely on Git for version control and code collaboration.

For projects related to Git code, at the moment, the best of what is. And here are a few reasons why Git is a good choice.

Functionality
Of course, the functionality of Git and its philosophy are the most valuable of what is offered to users: an excellent branching model, the possibility of autonomous work and the concept of the prepared files area are just some of the basic features that help developers to be productive, creative and efficient.

Popularity and vitality
Being popular and widely available is important for any system. Popularity means that there are communities willing to help you get started with the system.

And when you have to work on the code in the team, it is likely that your team members already know how to use Git .

In addition, as a popular VCS, Git becomes attractive to third-party developers and provides support tools and services (for example, GitHub) that could further expand the possibilities of working with Git.

Popularity also ensures that Git, as an open source project, in the near future will not disappear - which is an important factor for developers thinking about whether or not to trust an open project in the long term.

image
The Official Git Page (2014)

Having high-quality educational materials
Nothing has been easier than starting to learn Git. Today, there are tons of documentation, tutorials, videos, and manuals for this VCS.

Here are some resources to help you get started with Git.

Why aren't you using Git yet?
Yes, yes, it's me to you: what is holding you back from using version control based on Git? Let me know in the comments!

Also popular now: