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...
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.
Steps to reproduce :
- Access the "Source Control" tab on the left side of VSCode
- Click on the "three small dots" next to the refresh button
- Click on the "Checkout to..." option
- 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.
For me, I recommend you to install vscode gitlens extensions(), and go left bottom. then click on the branch name and select your branch.
- git branch branchName if you like command line