DEV Community

Cover image for Git & Github Commands
Oshi Gupta
Oshi Gupta

Posted on

Git & Github Commands

Smarter cloning, forking, merging, branching, documenting, sharing, and automating with Git and GitHub and contribute to open source.
Git is a distributed version control system, originally written by Linus Torvalds in 2005 for and with help from the Linux kernel community.Git is a modern and widely used distributed version control system in the world. It is developed to manage projects with high speed and efficiency. The version control system allows us to monitor and work together with our team members at the same workspace.

What is Git?

Git is an open-source distributed version control system. It is designed to handle minor to major projects with high speed and efficiency. It is developed to co-ordinate the work among the developers. The version control allows us to track and work together with our team members at the same workspace.
Git is foundation of many services like GitHub and GitLab, but we can use Git without using any other Git services. Git can be used privately and publicly.
Git was created by Linus Torvalds in 2005 to develop Linux Kernel. It is also used as an important distributed version-control tool for the DevOps.
Git is easy to learn, and has fast performance. It is superior to other SCM tools like Subversion, CVS, Perforce, and ClearCase.

The following are some commands which one can use to start with open source.

Git Cheat Sheet

1. Git configuration

Git config
Get and set configuration variables that control all facets of how Git looks and operates.
Set the name:
$ git config — global “username”
Set the email:
$ git config — global “

2. Starting a project

Git init
Create a local repository:
$ git init
Git clone
Make a local copy of the server repository.
$ git clone

3. Local changes

Git add
Add a file to staging (Index) area:
$ git add Filename
Add all files of a repo to staging (Index) area:
$ git add .
Git commit
Record or snapshots the file permanently in the version history with a message.
$ git commit -m “ Commit Message”

4. Track changes

Git diff
Track the changes that have not been staged: $ git diff
Track the changes that have staged but not committed:
$ git diff — staged
Track the changes after committing a file:
$ git diff HEAD
Track the changes between two commits:
$ git diff Git Diff Branches:
$ git diff < branch 2>
Git status
Display the state of the working directory and the staging area.
$ git status
Git show Shows objects:
$ git show

5. Commit History

Git log
Display the most recent commits and the status of the head:
$ git log
Display the output as one commit per line:
$ git log -oneline
Displays the files that have been modified:
$ git log -stat
Display the modified files with location:
$ git log -p
Git blame
Display the modification on each line of a file:
$ git blame

6. Ignoring files

Specify intentionally untracked files that Git should ignore. Create .gitignore:
$ touch .gitignore List the ignored files.

7. Branching

Git branch Create branch:
$ git branch List Branch:
$ git branch — list Delete a Branch:
$ git branch -d Delete a remote Branch:
$ git push origin -delete Rename Branch:
$ git branch -m
Git checkout
Switch between branches in a repository.
Switch to a particular branch:
$ git checkout
Create a new branch and switch to it:
$ git checkout -b Checkout a Remote branch:
$ git checkout

8. Merging

Git merge
Merge the branches:
$ git merge
Merge the specified commit to currently active branch:
$ git merge
Git rebase
Apply a sequence of commits from distinct branches into a final commit.
$ git rebase
Continue the rebasing process:
$ git rebase -continue Abort the rebasing process:
$ git rebase — skip

9. Remote

Git remote
Check the configuration of the remote server:
$ git remote -v
Add a remote for the repository:
$ git remote add Fetch the data from the remote server:
$ git fetch
Git origin master
Push data to the remote server:
$ git push origin master Pull data from remote server:
$ git pull origin master

10. Pushing Updates

Git push
Transfer the commits from your local repository to a remote server. Push data to the remote server:
$ git push origin master Force push data:
$ git push -f
Delete a remote branch by push command:
$ git push origin -delete edited

11. Pulling updates

Git pull
Pull the data from the server:
$ git pull origin master
Pull a remote branch:
$ git pull

12. Undo changes

Git revert
Undo the changes:
$ git revert
Revert a particular commit:
$ git revert
Git reset
Reset the changes:
$ git reset -hard
$ git reset -soft:
$ git reset — mixed

13. Removing files

Git rm
Remove the files from the working tree and from the index:
$ git rm
Remove files from the Git But keep the files in your local repository:
$ git rm — cached

Happy Learning! Explore the open source world.

Discussion (2)

murkrage profile image
Mike Ekkel

Good post :), it would help if you used code blocks around the commands like so:

$ git config — global “username”
Enter fullscreen mode Exit fullscreen mode

This can be done by using three backticks (`). Check out this markdown cheatsheet for more info!

oshi36 profile image
Oshi Gupta Author

Thank you Mike for the suggestion.I will use that.