Skip to content. | Skip to navigation

Personal tools


You are here: Home / Wiki / Gitrepository


Emulab Git Repository

Emulab Git Repository

The official source for Emulab is kept in a set of Git repositories. For general information about Git, see or

Available Repositories

There are two Emulab repositories available.

  • A stable repository, called emulab-stable, which contains code after it has been vetted (eg. after it has run for a while on the Utah Emulab site). We recommend that most people use this repository.
  • A development repository, called emulab-devel, which contains the latest "bleeding edge" changes to the code base. This code may not necessarily be tested well, or at all.

We have also created a repository for "contributed code" which will contain code contributed by other developers.

All of our public repositories can be browsed at

Anonymous Read-Only Access to Emulab Git

We provide anonymous read-only access to the Emulab Git repository via HTTPs.

The emulab-stable repository may be cloned using the following git command:

git clone

The emulab-devel repository may be cloned as follows:

git clone

Once you have a Git checkout, following the instructions for upgrading your site.

Updating From Old Repository Locations

If you have a git clone from one of our old repositories on, you can apply the appropriate command below to point it to the newer GitLab location:

For emulab-stable repositories:

git remote set-url origin

For emulab-devel repositories:

git remote set-url origin

Tracking Commits to the Emulab Repositories

If you would like to track the daily Git commits, there are two possibilities:

  1. Visit the online Changelog an a regular basis.
  2. Join the Stable Commits mailing list, and/or the Devel Commits mailing list. Each commit log entry is sent to these lists, which sounds like a lot of traffic, but is not that bad, really.

Contributing to the Emulab code

The GitLab site that we use to host Emulab operates much like GitHub and other git hosting services, so to contribute to Emulab development you can:

To do either of these, you will need an account on GitLab; our GitLab site has open registration, so just click on the "Sign In" button and make a new account.


Here in Utah we have put together a typical workflow that describes how Flux project members are expected to operate.