Version Control Systems: Svk

Forest Bond

Overview

Author:
Chia-liang Kao
Model:
distributed, but designed to work with a central server
Language:
Perl
License:
Perl (Artistic & GPL)

History

Concept

Svk is a distributed system, but is designed to be used as an extension to a centralized system. In other words, Svk has the concept of "upstream" built in.

Concept (cont'd)

Svk (like Subversion), takes a generic approach to repository contents:

Concept (cont'd)

Typical depot structure:

User Interface

The primary Svk interface is the svk command-line utility:

Advantages & Disadvantages

Advantages:

Disadvantages:

Advantages – Cross-Platform

Svk should run on any system with a reasonably complete Perl implementation. This includes:

Advantages – Integration With Centralized Systems

Svk current supports mirroring of centralized repositories managed using the following packages:

Conclusion

Svk is a de-centralized VCS that you can actually use at work, and enables efficient branch-merge style workflows even without a network connection.