Quick intro to Git – Part III

In this article I am going to show you how to play with branches and merges.

Create branch

As shown in previous article, I was working on the master branch. GitHub gives you the flexibility to create branches and allows you to cherry pick your changes to be merged back to your main branch. So lets make a new branch:

On your repository, you will see a pull down button showing you the current branch as master. Click on it and type name for your new branch. I called this Feature1. Click on the blue bar that says ‘Create branch: Feature1’.


Clicking this will create a new branch Feature1 from master. You will see all your files in your branch (I know i have one file only :)). Clicking on the same button should show a tick mark against ‘Feature1’, which means you are now in Feature1 branch.


Clone branch locally

What i am doing here is that the Feature1 branch code is being cloned into a new folder called TestRepoFeature1.

C:\work\amar\Code\TestRepo [master =]> git clone https://github.com/amarsingh19/
TestRepo.git -b Feature1 ../TestRepoFeature1
Cloning into '../TestRepoFeature1'...
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 6 (delta 0), reused 6 (delta 0), pack-reused 0
Unpacking objects: 100% (6/6), done.
C:\work\amar\Code\TestRepo [master =]> cd..
C:\work\amar\Code> cd TestRepoFeature1
C:\work\amar\Code\TestRepoFeature1 [Feature1 =]>

Make edits

Now I am going to make some changes to FirstFile.txt such that it looks like this:

This is first file.

Version 3

Branch: Feature1

Next lets do commit and push the changes.

git add FirstFile.txt

git commit -m "Feature1 first commit..."

git push -u origin Feature1

and voila! If you check your repository on GitHub Feature1 branch should get updated with your changes.

Merge Feature1 changes to master

To initiate the merge, you will have to submit a New pull request to the owner of the original repository. Pull request is something like you’re requesting the owner of the repository to review your changes and merge into the main branch. You can do so by clicking on the button highlighted:


Since I am the owner of the original repository, I see below screen


Click on the ‘Merge pull request’ button:


Click on the ‘Confirm merge’ button. At this stage you can delete this Feature1 branch.


Now lets check what happens to the main branch. Open FirstFile.txt and notice the contents have been merged from Feature1 branch.


This completes one complete workflow of creating a repository, branching and merging the changes back to the main branch. I hope I was able to provide good information here.



Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s