All the version control systems I has ever confronted with are supported either with builtin packages or 3rd-party ones. There are more powerful (and more specific) plugins. But I simply prefer the builtin ones since these wrappers adapt interfaces of different VC systems to a uniform Emacs VC interface.

cvs builtin svn builtin git builtin clearcase I am using vc-clearcase. perforce I was using p4.el years before. Now, vc-p4.el seems more appealing to me (but I am no longer using perforce).

In examples in this post, I mainly use git and sometimes cvs. If you are using other VC systems, say SVN, the screen output may differ slightly. But the operations shall be the same.