#### 16.9.1 Custom VCS interfaces

The Version Control interface in GPS can be customized, either to refine the behavior of the existing system and adapt it to specific needs, or to add support for other Version Control systems.

Custom VCS interfaces are defined entirely through XML files. Those files are read in the same location as all the other XML customizations that GPS offers. See Customizing through XML and Python files for a complete description.

There are two steps to follow when creating a custom VCS interface. The first step is to describe the VCS itself, and the second step is to implement actions corresponding to all the operations that this VCS can perform. The following two sections (Describing a VCS and Implementing VCS actions) describe those steps.

GPS is distributed with XML files describing the interfaces to ClearCase, CVS and Subversion. These XML files are located in the directory `share/gps/plug-ins` in the GPS installation, and can be used as a reference for implementing new custom VCS interfaces.