What does git sync do in VSCode What does git sync do in VSCode git git

What does git sync do in VSCode


From the VSCode online help:

Given that your repository is connected to some remote and that your checked out branch has an upstream link to a branch in that remote, VS Code offers you useful actions to push, pull and sync that branch (the latter will run a pull command followed by a push command).

It appears that if you run synchronize changes on a given branch, it will do the following:

git pull origin someBranchgit push origin someBranch

Per the comment by @FelikZ one way to make pull --rebase the default behavior for git pull would be to configure your .gitconfig file by adding the following:

[pull]    rebase = true

Then, when the VSCode plugin issues a git pull, it should use the rebase strategy by default. If you follow the above link and scroll to the section "Git patch/diff mode," you will see a screen capture which actually shows configuring Git for pulling via rebase.

Update: As of v1.28 there is now a git.rebaseWhenSync setting. From the release notes:

The git.rebaseWhenSync setting will let you configure the Sync command to always use rebase instead of merge when running.


Visual Studio Code sync sequence : PUSH + PULLscreen shot from VS Code

Visual Studio 2019 sync sequence : PULL + PUSHscreen shoot from Visual Studio 2019 documentation