Step-by-step guide to Git repository setup, making changes, and merging branches (see Step 4); moving my previous comment (TLDR) into an answer for completeness.
TLDR
- Move (checkout) to the branch that you want to bring changes INTO (click the branch name in the bottom-left of the Status Bar (next to the little source control branch icon).
- In the Source Control pane, click the 3 dots menu > Branch > Merge...
- In the Command Palette menu that appears, select the branch that you want to take changes FROM.
This is detailed in Step 4.
Visual Studio Code (vscode)
Step 1 (Initialise/Clone)
In Visual Studio Code, if a repository (repo) has not already been created you can either Initialise a local repo or Clone from a remote repo:
A. Initialise Local
- Go to Source Control pane.
- For a new local repo, click Initialise Repository.
- To publish to a remote directly instead (which will also initialise the local), select Publish to GitHub:
- In the Command Palette dropdown menu that appears, select to publish to private or public remote.

- Enter a commit message.
- Stage changes (remember to Save files also):
- For individual files: Hover mouse over each file and select +.
- For all files: Hover mouse over Changes heading and select +.
- Click Commit button.
- Repeat steps 3, 4, 5 for subsequent commits.

- To push to a remote, click Publish Branch (if not already associated with a remote):
- In the Command Palette dropdown menu that appears, select to publish to private or public remote.

- If associated with a remote, select the dropdown on the Commit button to Commit & Sync to perform this all in one action.

B. Clone Remote
- Copy remote repo URL from internet browser.
- In vscode (not in a project folder with a Git repo, i.e. a new session window), go to Source Control pane.
- Select Clone Repoository button.
- In the Command Palette dropdown menu that appears, paste the remote URL.

Step 2 (Make Changes)
Make changes and commit according to Step 1, A. 3, 4, 5, 7.
Step 3 (Branch Actions)
- In vscode, in the Status Bar at the bottom of the window, next to the Source Control icon there is the name of the current selected branch, click it.

- In the Command Palette dropdown menu that appears, select Create new branch...

- To checkout (move) to a branch:
- Click the Source Control branch in the Status Bar (Step 3, 1).
- Select the branch to checkout to.
- Typically, moving is between local branches which are then synchronised with the remote; or moving to a remote branch in which commits are then fetched to the local.
Alternatively, in the the Source Control pane, click the 3 dots (...) menu of the Source Control heading and navigate to the option.
Step 4 (Merging Branches)
- Checkout (move) to the branch that you want to bring changes INTO (Step 3, 3).

- On the Source Control pane:
- Click the 3 dots (...) menu.
- Branch > Merge...

- In the Command Palette dropdown menu that appears, select the branch that you want to take changes FROM.

- To synchronise changes with the remote click the Sync Changes button on the Source Control pane.

For more info check out: VS Code overview