DEV Community

Angel Oduro-Temeng Twumasi
Angel Oduro-Temeng Twumasi

Posted on

Master Git Commands with This Handy Cheat Sheet ๐Ÿ“œ

Git, the widely used distributed version control system, has revolutionized the way developers collaborate and manage their codebases. Whether you're a seasoned developer or just starting your coding journey, having a solid understanding of essential Git commands is crucial for maintaining an efficient workflow and ensuring the integrity of your projects.

As said by Ben Collins-Sussman, Co-founder of Google Code ๐Ÿ‘‡๐Ÿพ

Git is a powerful tool for distributed version control. It is a way to ensure that your project evolves gracefully over time, no matter how many people are working on it.

Now steal this git cheat sheet I prepared for you ๐Ÿ˜€

๐Ÿ”—Configurations

  • Configure your name. This would serve as the author of the commit : git config --global user.name "[fistname lastname]"
  • Configure your email. This would serve as the email of the author : git config --global user.email "[your_email]"

๐ŸŒฑInitialization

  • Initialize a new Git repository : git init
  • Create a local copy of a remote repository : git clone <repository_url>
  • Add a remote repository : git remote add <remote_name> <remote_url>

๐Ÿ“Basic Workflow

  • Add a file to the staging area : git add <filename>
  • Add all files to the staging area : git add .
  • Commit changes to the repository : git commit -m "[commit_message]"

๐Ÿ”Updating and Publishing

  • Publish all local commits to a remote branch : git push <remote_name> <branch_name>
  • Publish all local commits to a new branch : git push -u <remote_name> <branch_name>
  • Update the local repository : git pull
  • Download remote changes without merging : git fetch

๐ŸŒฟBranches

  • Create a new branch : git branch <branch_name>
  • Switch to a branch : git checkout <branch_name>
  • Create a new branch and switch to it : git checkout -b <branch_name>
  • List all the branches : git branch -a
  • Determine your current branch : git branch

๐Ÿ”€Merging

  • Combine changes of one branch to your current branch : git merge <branch_name>
  • Reapply commits on top of another base commit : git rebase <branch_name>

๐Ÿ”ƒResets

  • Discard all local changes : git reset --hard HEAD

๐Ÿ”Status and History

  • View the status of the working directory : git status
  • Show difference between commits or the working directory : git diff
  • Show commit history : git log
  • Display who last modified each line of a file : git blame

๐Ÿ’ผAdditional commands

  • Remove untracked files : git clean -f

Useful tips โœ๐Ÿพ

  • Donโ€™t EVER commit private keys / Api keys / certificates.
  • Use descriptive commit messages and branch names.
  • Create a branch for every new feature, and delete the branch once the feature is merged into main.
  • Ignore some files using a .gitignore file.
  • Regularly update and sync with remote repositories
  • Use git alias for frequently used commands.

Visit Atlassian or GitHub Education to read more on other advanced git commands๐Ÿ”ฅ

In conclusion, mastering Git commands is crucial for efficient version control and collaboration in software development, enabling developers to effectively manage projects and streamline workflows.

Did you learn anything new โ“ Share it in the comments.

Let's get interactive on Twitter and LinkedIn

Follow my projects on GitHub

Happy coding ๐Ÿ‘จ๐Ÿพโ€๐Ÿ’ป

Top comments (6)

Collapse
 
mardiya profile image
Mardiya Zubairu

Great compilation๐Ÿ‘
One thing though..
I think putting the commands in code blocks would help make them standout clearer between the texts
Example๐Ÿ‘‡

Git command 
Enter fullscreen mode Exit fullscreen mode

Definitely keeping your cheat sheet Angel๐Ÿ˜….

Collapse
 
angelotheman profile image
Angel Oduro-Temeng Twumasi

You gotta keep it yeah ๐Ÿ˜€.

I'll look into your suggestion and update as best fit. Thank you so much. Really appreciate โค๏ธ

Collapse
 
dimitrim profile image
Dimitri Mostrey • Edited

A suggestion: before using git clean -f you may want to run git clean -n as a dry-run and see what git will clean. If you want to include directories:
git clean -d -f to force it
git clean -d -n to have a preview peek to see what the command will actually delete (yes, this is not a typo)

If you want some real fun, run git clean -d -x -f. It will also delete ignored files and directories. So please, don't run this on a production server. You will cry for your mama (who can't fix it for you ๐Ÿ˜)

Point being, be very careful with the git command clean.

Collapse
 
angelotheman profile image
Angel Oduro-Temeng Twumasi

What wonderful insights.

Surely such precautions must be taken to ensure that such isn't done on the production server to cause any setbacks.

Thank you ๐Ÿ˜

Collapse
 
fred010 profile image
Fred010

Good piece man. keep it up

Collapse
 
angelotheman profile image
Angel Oduro-Temeng Twumasi

Thanks Fred. More of this coming right up.

Appreciate ๐Ÿฅ‚