cheatsheets/git-branch.md

1.3 KiB

title category layout updated
Git branches Git 2017/sheet 2017-09-20

Working with branches

{: .-three-column}

Creating

git checkout -b $branchname
git push origin $branchname --set-upstream

Creates a new branch locally then pushes it.

Getting from remote

git fetch origin
git checkout --track origin/$branchname

Gets a branch in a remote.

Delete local remote-tracking branches

git remote prune origin

Deletes origin/* branches in your local copy. Doesn't affect the remote.

List existing branches

git branch --list

Existing branches are listed. Current branch will be highlighted with an asterisk.

List merged branches

git branch -a --merged

List outdated branches that have been merged into the current one.

Delete branch forcefully

git branch -D $branchname

Delete a branch irrespective of its merged status.

Delete remote branch

git push origin :$branchname

Works for tags, too!

Get current sha1

git show-ref HEAD -s

Reset branch and remove all changes

git reset --hard

Undo commits to a specific commit and push to branch

git reset --hard [commitID]
//Now push to your branch
git push --force