28.1.11.2 Pulling Changes into a Branch

C-x v +

On a decentralized version control system, update the current branch
by “pulling in” changes from another location.

On a centralized version control system, update the current VC
fileset.

On a decentralized version control system, the command C-x v +
(vc-pull) updates the current branch and working tree. It is
typically used to update a copy of a remote branch. If you supply a
prefix argument, the command prompts for the exact version control
command to use, which lets you specify where to pull changes from.
Otherwise, it pulls from a default location determined by the version
control system.

Amongst decentralized version control systems, C-x v + is
currently supported only by Bazaar, Git, and Mercurial. On Bazaar, it
calls bzr pull for ordinary branches (to pull from a master
branch into a mirroring branch), and bzr update for a bound
branch (to pull from a central repository). On Git, it calls
git pull to fetch changes from a remote repository and merge
it into the current branch. On Mercurial, it calls hg pull
-u to fetch changesets from the default remote repository and update
the working directory.

Prior to pulling, you can use C-x v I (vc-log-incoming)
to view a log buffer of the changes to be applied. See VC Change Log.

On a centralized version control system like CVS, C-x v +
updates the current VC fileset from the repository.