Storing the VCS type in the database
Since the inception of Heptapod, we've favored supporting only Mercurial over the added weight to support both Git and Mercurial.
But now that the HGitaly project has been launched, and that we are on the verge of having public instances, we have to think of how we will migrate existing repositories (meant for mirroring to an internal Git repository) to native Mercurial repositories internally accessed through HGitaly.
Having actually two VCS types for Mercurial: hg-git
and hg
(or hgitaly
) will help those migrations by not forcing to migrate all repos when we want to plug HGitaly in the future.
Now, we want this VCS type field ASAP, meaning in 0.8.0
Also, it will provide the kind of protection we'll want for things like #129 (closed), and a path to enough limited support for Git repositories that the testing content created by the GitLab Development Toolkit won't just explode in the face of developers trying to use it.