How Do You Switch Between Branches in Visual Studio Code with Git?

I am trying to workout how branching works in Visual Studio Code and Git. Previously I've worked with TFS which was pretty simple - you create a branch and this is all stored in a separate folder on your disk so you can easily work on one branch or another.

So in Visual Studio Code I have created a new branch "test" from master. In Visual Studio Code I am looking at the branch icon bottom left to see which branch I'm working in.

Visual Studio Code Branching Icon

It says I'm working in test, so I make changes to file1, commit and synchronise the changes. I now want to work on the master branch, so I go bottom left, switch to master, but my changes from the test branch are still displayed in the editor.

If I look on the hard disk, my changes from the test branch are there, and there is no separate test & master folder. So how do I get to work on the master branch again? I've tried checkout, synchronising on the master branch, but I always have the test changes displayed.

A typical scenario is, I'm part way through working on a new feature on a branch, and I need to switch to master to do a hotfix, before returning to the feature branch. Switching between those branches is escaping me.

4 Answers

When in the Visual Studio Code IDE, do the following:

  • on the bottom left, press on the Git branch which will give a list: Select a ref to checkout
  • select one of the branches of the remote branch.
1

Steps to reproduce :

  1. Access the "Source Control" tab on the left side of VSCode
  2. Click on the "three small dots" next to the refresh button
  3. Click on the "Checkout to..." option
  4. Choose the branch you want to switch to

(Personally it works better if you create a branch in VSCode directly than on the web application on Github or Gitlab)

Enjoy

To switch branches in VScode: git checkout branchname. That all that's needed.

2

For me, I recommend you to install vscode gitlens extensions(), and go left bottom. then click on the branch name and select your branch.

  1. git branch branchName if you like command line

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Alexander Ross

Alexander Ross

Gaming, Esports & Interactive Media Writer

Alexander Ross has covered the video game industry for a decade, writing deep dives on game design, esports tournaments, VR developments, and gaming culture.

Share this article
Twitter Facebook Pinterest