DEV Community

Cover image for How to Get Better with Git

How to Get Better with Git

Ana Vela on July 24, 2021

Git is a version control tool that any developer would benefit from learning. Using git allows you to save your code as you make changes, and you c...
Collapse
 
jonrandy profile image
Jon Randy πŸŽ–οΈ

It's 100% unnecessary to use Git on the command line. I'm a senior dev and much prefer a GUI client (I thoroughly recommend GitKraken)

Collapse
 
anaveecodes profile image
Ana Vela

I use GitKraken when I help maintain an open source project. With so many branches and pull requests, it helps me keep track of what is going on at any given time. And I love the visual aspect of it. What is your #1 piece of advice for those who are new to git?

Collapse
 
arroyoruy profile image
Dan Arroyo

This statement can be done the other way around too: It's 100% unnecessary to use Git in a GUI. I am a senior dev and rarely use Git outside of the command line. it is all preference.

Collapse
 
cvega profile image
Casey Vega

You don't need to use a CLI tool to take advantage of the value git brings, but if one is to download and install git, they are installing the git binary which IS a command line tool. At GitHub we tend to recommend the CLI, but if folks feel good using a different tool to interface with Git, they should stick with it.

I'm a little bias, but lab.github.com is also a good learning resource.

Collapse
 
anaveecodes profile image
Ana Vela

Good point, Dan!

Collapse
 
jonrandy profile image
Jon Randy πŸŽ–οΈ • Edited

Very true, but the article and others like it seem to imply that learning to use it on the command line is absolutely essential. It isn't

Thread Thread
 
arroyoruy profile image
Dan Arroyo

It depends on what you do. I find myself in many different environments frequently. I learned CLI because it would take too long, or I am not allowed to install preferred tools. CLI, just like vi, tends to be everywhere. if you always develop in the same machine, then OK, I agree.

Collapse
 
waylonwalker profile image
Waylon Walker

I really like that you included leaning on a mentor and watching closely to how others naturally use git.

There is no shortcut for practice. If you really want to level up your git skills without wrecking a real project practice. Make a new project, git init, add a file, edit it in different ways and commit all along. Try to branch, rebase and merge as well. When your done delete it and move in with better git skills.

Collapse
 
anaveecodes profile image
Ana Vela

That's a great idea to start a new project just to practice git. Concepts like merge conflicts will happen in real work scenarios, so I feel practicing how to resolve those in an environment without stress is time well spent!

Collapse
 
anitagraham profile image
Anita Graham

I find that faux projects don't offer the 'drive' to do enough things and its hard to make mistakes that matter!

You need to use git on a real project to develop the habits of git (make a new branch every time you are tackling a new issue, for instance).

Collapse
 
jwhenry3 profile image
Justin Henry

Alternate title: How to Git Better

Collapse
 
anaveecodes profile image
Ana Vela

Love that title!

Collapse
 
efrenshou profile image
EfrΓ©n VΓ‘zquez SolΓ­s

Now there's no excuse to not level up our git knowledge with all the resources you've listed here. Already bookmarked. Thank you, Ana!

Collapse
 
anaveecodes profile image
Ana Vela

I'm so glad this post can be useful to you, EfrΓ©n!

Collapse
 
bobbyiliev profile image
Bobby Iliev

Great article!

Thank you for the mention πŸ™Œ

Collapse
 
anaveecodes profile image
Ana Vela

Sure! I'm always happy to share great resources. :)

Collapse
 
mike4040 profile image
Mike Kravtsov

I’ll add git course at codewithmosh.com

Collapse
 
anaveecodes profile image
Ana Vela

That's a great idea, Mike! I've checked out some of Mosh's tutorials and he's a good instructor. Best wishes to you :)

Collapse
 
lofibytes profile image
Jillian S. Estrella (she/her)

Don’t leave out Oh Shit, Git!?!

ohshitgit.com/

It’s a great resource.

Collapse
 
anaveecodes profile image
Ana Vela

lol Good one!