On a centralized version control system, update the current VC fileset.
On a decentralized version control system, the command C-x v P
vc-push) updates another location with changes from the
current branch. With a prefix argument, it prompts for the exact
version control command to run, which lets you specify where to push
changes; the default is bzr push with Bazaar, git
push with Git, and hg push with Mercurial. The default
commands always push to a default location determined by the version
control system from your branch configuration.
Prior to pushing, you can use C-x v O (
to view a log buffer of the changes to be sent. See VC Change Log.
This command is currently supported only by Bazaar, Git, and Mercurial. The concept of “pushing” does not exist for centralized version control systems, where this operation is a part of committing a changeset, so invoking this command on a centralized VCS signals an error. This command also signals an error when attempted in a Bazaar bound branch, where committing a changeset automatically pushes the changes to the remote repository to which the local branch is bound.
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
Amongst decentralized version control systems, C-x v + is currently supported only by Bazaar, Git, and Mercurial. With 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). With Git, it calls git pull to fetch changes from a remote repository and merge it into the current branch. With 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 (
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.