Top 20 Git Commands With Examples
Top 20 Git Commands With Examples
Now that you (presumably) know what Git is and how it works, take a look at examples of how to use the top 20 Git commands.
Join the DZone community and get the full member experience.Join For Free
In the previous blog, you got an understanding of What Git is. In this blog, I will talk about the Top 20 Git Commands that you will be using frequently while you are working with Git.
Here are the Git commands which are being covered:
- git config
- git init
- git clone
- git add
- git commit
- git diff
- git reset
- git status
- git rm
- git log
- git show
- git tag
- git branch
- git checkout
- git merge
- git remote
- git push
- git pull
- git stash
So, let's get started now!!
git config –global user.name “[name]”
git config –global user.email “[email address]”
This command sets the author name and email address respectively to be used with your commits.
git init [repository name]
This command is used to start a new repository.
git clone [url]
This command is used to obtain a repository from an existing URL.
git add [file]
This command adds a file to the staging area.
git add *
This command adds one or more to the staging area.
git commit -m “[ Type in the commit message]”
This command records or snapshots the file permanently in the version history.
git commit -a
This command commits any files you’ve added with the git add command and also commits any files you’ve changed since then.
This command shows the file differences which are not yet staged.
Usage: git diff –staged
This command shows the differences between the files in the staging area and the latest version present.
git diff [first branch] [second branch]
This command shows the differences between the two branches mentioned.
git reset [file]
This command unstages the file, but it preserves the file contents.
git reset [commit]
This command undoes all the commits after the specified commit and preserves the changes locally.
git reset –hard [commit] This command discards all history and goes back to the specified commit.
This command lists all the files that have to be committed.
git rm [file]
This command deletes the file from your working directory and stages the deletion.
This command is used to list the version history for the current branch.
git log –follow[file]
This command lists version history for a file, including the renaming of files also.
git show [commit]
This command shows the metadata and content changes of the specified commit.
git tag [commitID]
This command is used to give tags to the specified commit.
This command lists all the local branches in the current repository.
git branch [branch name]
This command creates a new branch.
git branch -d [branch name]
This command deletes the feature branch.
git checkout [branch name]
This command is used to switch from one branch to another.
git checkout -b [branch name]
This command creates a new branch and also switches to it.
git merge [branch name]
This command merges the specified branch’s history into the current branch.
git remote add [variable name] [Remote Server Link]
This command is used to connect your local repository to the remote server.
git push [variable name] master
This command sends the committed changes of master branch to your remote repository.
git push [variable name] [branch]
This command sends the branch commits to your remote repository.
git push –all [variable name]
This command pushes all branches to your remote repository.
git push [variable name] :[branch name]
This command deletes a branch on your remote repository.
git pull [Repository Link]
This command fetches and merges changes on the remote server to your working directory.
git stash save
This command temporarily stores all the modified tracked files.
git stash pop
This command restores the most recently stashed files.
git stash list
This command lists all stashed changesets.
git stash drop
This command discards the most recently stashed changeset.
Published at DZone with permission of Sahiti Kappagantula , DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.