Emacs provides with dvc a standard interface for Distributed Version Control systems. For some of them also exist additional modes.
vc provides a standard interface between Emacs and conventional version control systems. See the table for an overview.