Git & GitHub Commands For Beginners

Oshi Gupta
4 min readFeb 1, 2021

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.

Why One should use Git?

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 user.name “username”
    Set the email:
    $ git config — global user.email “useremail@gmail.com”

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 <file name>

6. Ignoring files

  • .gitignore
    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 <file Name>
    Remove files from the Git But keep the files in your local repository:
    $ git rm — cached

--

--