Over a million developers have joined DZone.

Git Commands Tutorial - Part 2

DZone's Guide to

Git Commands Tutorial - Part 2

In Part 1, we learned how to use Git options and what they can do. Today, we'll continue this exploration of commonly used Git Commands.

· Web Dev Zone ·
Free Resource

Jumpstart your Angular applications with Indigo.Design, a unified platform for visual design, UX prototyping, code generation, and app development.

In the last 'Git Commands' article, we learned how to use Git options and what they can do. Today, we will extend our reach and discover everything there is to know about commonly used Git Commands.

Git Commands

Git commands are used to access the Git working directory and connect it to our remote repository, by making changes, viewing different files, and many other possibilities! Once your project is set, be sure to connect it with Git.

With the following commands and short descriptions, we will make it sure that you are ready to use Git whenever you need it. For a detailed description of all, the GIT commands please check git's official description.

$git config

You can use $git config to configure the author's name, email address, file formats, and many more to be used with your commits.

git config --global user.name "Kolosek 
git config --global user.email "[email protected]"

$git init 

Using this command you can make sure that your git repository is initialized and creates the initial .git directory in a new or in an existing project. The output will be the following:

Initialized empty Git repository in /path/.git/ 

You can undo a $git init with rm -rf .git.

$git clone <path>

This creates a working copy of a Git repository from a remote source to your local repository. This is the first command you want to use when you are cloning a Git repository.

git clone /path/repository

Also, you can add the original location as a remote so you can easily fetch from it again and push it if you have permissions. Once the project has been cloned you can start working on it. Write your RSpec tests!

git clone [email protected]:user/repository.git

You can clone one specific branch at a time: git clone -b <branch_name><repository_url>:

git clone -b branch_name [email protected]:user/repository.git

$git add <file_name>

Add one or more files in your working directory to your index.

$git commit

Take all your changes written in the index to the HEAD branch with a -m message.

git commit -m "Commit these changes." 

You can also commit any files you've added to git add, and also commit any files you've changed since then:

git commit -a 

Always commit all your changes ,even if it's only a bunch of Capybara tests!

$git status

It shows you the status difference between an index and working directory files. This command also lists the files you've changed or untracked because they are only in your working directory and staged since they are ready to be committed.

On branch master
Initial commit

Untracked files:
  (use "git add <file>..." to include in what will be committed)


nothing added to commit but untracked files present (use "git add" to track)

$git remote

Shows all the remote versions of your repository.

$git checkout <branch_name>: You can switch from an existing branch to another one or create a new branch and switch to it git checkout -b <branch_name>.

$git branch

With this, you can simply list all existing branches, including remote branches by using -a or create a new branch if a branch name is provided.

$git push

This command pushes all changes to the remote repository.

git push origin <branch_name> 

You can also delete a branch from your remote repository:

git push origin :<branch_name> 

In Kolosek we commit all our changes to Git and make it sure to notify our team when they are merged with the rest of the application! Try to create your own application using Rails Associations.

$git diff

Show changes between your working tree and the index, between two branches, or changes between two files on disk. Example between branches:

git diff <source_branch> <target_branch>

$git reset

Reset your index and working directory to the state of your last commit.

git reset --hard origin/master 

git reset --hard will also undo the changes you made so far! Use git reset --soft if you want to keep your changes.

$git tag

You can use tagging to mark a significant change you made, such as a release.

git tag 1.0.0 <commit_id>

Always tag your new production releases. Try it out by implementing CarrierWave and adding a release tag to it!

$git revert

Revert works in a very similar way to$git reset, but instead of resetting it will create a new commit that reverses everything introduced by the accidental commit.

Always tag your new production releases. Try it out by implementing CarrierWave and adding a release tag to it!

$git log

It shows a listing of commits on a branch with corresponding details.

commit 134808af7c596be8d92c619f9efb94542874e1e3
Author: Kolosek <kolosek@example.com>
Date:   Fri Mar 23 14:24:54 2018 +0100

    [#1] First Commit


With this, we have covered everything there is to know about Git commands. Don't forget, these are only the very basic and most commonly used commands. Hope this helped you to get started with Git!

Take a look at the Indigo.Design sample applications to learn more about how apps are created with design to code software.

web dev ,git ,git commands ,open source

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}