[Git]: Branch & Merge

git

03/21/2020


Create branch

BASH
git branch <branch_name>

Switch to branch

BASH
git checkout <branch_name>

Create & Switch to branch

BASH
git checkout -b <branch_name>

Check branches

BASH
git branch

Some Scenario

You're currently on a master branch

TEXT
[Commit1]
└─ master

You've decided to implement a new header, so you create a branch named newHeader

BASH
git checkout -b newHeader
TEXT
┌─ newHeader
[Commit1]
└─ master

While you're working on making a new header, you decide to commit a change

BASH
git add .
git commit -m "[WIP]: making a new header"
TEXT
[Commit1] <─── [Commit2]
└─ master └─ newHeader

newHeader branch is ahead of master

All of a sudden you have to fix a serious bug that doesn't depend on a new header that you've been implementing. Then you'd want to create a new branch from master

BASH
git checkout master
git checkout -b bug32

You've worked to fix the important bug and commit a change

BASH
git add .
git commit -m "[FIX]: bug32"
TEXT
┌─ bug32
┌────── [Commit3]
[Commit1] <─── [Commit2]
└─ master └─ newHeader

newHeader and bug32 has complete different changes

You've finished fixing the bug so you'd want to deploy it

BASH
git checkout master
git merge bug32

WRITTEN BY

Keeping a record