In this post, I’m focusing on Essential git commands. Git is an important part of daily programming (especially if you’re working with a team) and is widely used in the software industry.
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. Git is easy to learn and has a tiny footprint with lightning fast performance. It outclasses SCM tools like Subversion, CVS, Perforce, and ClearCase with features like cheap local branching, convenient staging areas, and multiple workflows.
Remember: To understand this article, you need to know the basic knowledge of Git.
Essential git commands
To copy a git repository from remote source, also sets the remote to original source so that you can pull again.
git clone <https://name-of-the-repository-link>
Generally, if we want to download a project from Github, all we need to do is click on the green button (clone or download), copy the URL in the box and paste it after the git clone command that I’ve shown right above. This will make a copy of the project to your local workspace so you can start working with it.
To initialise a git repository for a new or existing project.
git init in the root of your project directory.
Branches are highly important in the git world. By using branches, several developers are able to work in parallel on the same project simultaneously. We can use the git branch command for creating, listing and deleting branches.
Creating a new branch:
git branch <branch-name
This command will create a branch locally. To push the new branch into the remote repository, you need to use the following command:
git push -u <remote> <branch-name>
git branch or git branch --list
Deleting a branch:
git branch -d <branch-name>
To check the status of files you’ve changed in your working directory, i.e, what all has changed since your last commit.
adds changes to stage/index in your working directory.
To add a single file:
git add <file>
To add everything at once:
git add -A
Note: The git add command doesn’t change the repository and the changes are not saved until we use git commit.
Switch to different branches
git checkout <name-of-your-branch>
There are some steps you need to follow for successfully switching between branches:
- The changes in your current branch must be committed or stashed before you switch
- The branch you want to check out should exist in your local
There is also a shortcut command that allows you to create and switch to a branch at the same time:
git checkout -b <name-of-your-branch>
This command creates a new branch in your local (-b stands for branch) and checks the branch out to new right after it has been created.
commits your changes and sets it to new commit object for your remote.
git commit -m "commit message"
Git push/Git pull
Push or Pull your changes to remote. If you have added and committed your changes and you want to push them. Or if your remote has updated and you want those latest changes.
git push <remote> <branch-name>
However, if your branch is newly created, then you also need to upload the branch with the following command:
git push --set-upstream <remote> <name-of-your-branch>
git push -u origin <branch_name>
git pull <remote>
Merge two branches you were working on.
When you’ve completed development in your branch and everything works fine, the final step is merging the branch with the parent branch (dev or master).
For example, when you want to merge your feature branch into the dev branch:
First you should switch to the dev branch:
git checkout dev
Before merging, you should update your local dev branch:
Finally, you can merge your feature branch into dev:
git merge <branch-name>
Note: Make sure your dev branch has the latest version before you merge your branches, otherwise you may face conflicts or other unwanted problems.
You know when you commit changes that are not complete, this sets your index to the latest commit that you want to work on with.
git reset <:mode:> <:COMMIT:>
To check what remote/source you have or add a new remote.
git remote to check and list. And git remote add <:remote_url:>
Save changes that you don’t want to commit immediately.
git stash in your working directory. git stash apply if you want to bring your saved changes back.
Thanks for reading. If you like this post “Essential git commands” probably you might like my next ones, so please support me by subscribing my blog.