Difference between revisions of "Xen Project Repositories"

From Xen
m (Mercurial mirrors of Xen Project software)
(14 intermediate revisions by 5 users not shown)
Line 1: Line 1:
  +
= Version Control =
<!-- MoinMoin name: XenRepositories -->
 
<!-- Comment: -->
 
<!-- WikiMedia name: XenRepositories -->
 
<!-- Page revision: 00000014 -->
 
<!-- Original date: Wed Jul 20 16:38:16 2011 (1311179896000000) -->
 
   
  +
As of February 2013 Xen is maintained using the [http://git-svn.com GIT] version control system. Previously, the Xen Project was maintained in [http://mercurial.selenic.com/ Mercurial] and mirrors of git into mercurial are still provided.
__NOTOC__
 
= Xen Repositories =
 
   
  +
= Staging =
''staging'' trees are automatically pushed to the primary trees after test
 
   
  +
All changes to Xen Project software, whether to mainline or a stable branch, are initially pushed to a ''staging'' branch. These staging branches are then tested using the [http://xenbits.xen.org/gitweb/?p=osstest.git;a=summary automated test system].
  +
When the tests passed the ''staging'' trees are automatically pushed to the primary trees.
   
  +
= Repositories =
== Current Xen stable release branch (xen-4.2-testing) ==
 
   
  +
== Primary Xen Project Repository ==
The latest stable release from this branch is available from http://www.xen.org/products/xen_source.html .
 
   
  +
The main Xen Project repository is [http://xenbits.xen.org/gitweb/?p=xen.git git://xenbits.xen.org/xen.git]. This single repository contains branches for each of the stable maintenance branches as well as development and staging branches.
These repositories contain the in-progress work on the next release on the previous stable branch.
 
   
  +
=== Stable release branches (stable-4.4, stable-4.3, ...) ===
* '''[http://xenbits.xen.org/hg/xen-4.2-testing.hg xen-4.2-testing.hg]''' (''[http://xenbits.xen.org/hg/staging/xen-4.2-testing.hg staging]'').
 
* '''[http://xenbits.xen.org/gitweb/?p=qemu-xen-4.2-testing.git qemu-xen-4.2-testing.hg]''' (''[http://xenbits.xen.org/gitweb/?p=staging/qemu-xen-4.2-testing.git staging]'').
 
   
  +
More information on stable releases can be found in [[Xen Project Maintenance Releases]].
== Previous Xen stable release branch (xen-4.1-testing) ==
 
   
The latest stable release from this branch is available from http://www.xen.org/products/xen_archives.html .
+
The latest stable release from this branch is available from [http://xenproject.org/downloads/xen-archives.html http://xenproject.org/downloads/xen-archives.html].
   
These repositories contain the in-progress work on the next release on the previous stable branch.
+
These branches contain the in-progress work on the next release on the previous stable branch and are named '''stable-X.Y''' (and '''staging-X.Y''') where '''X.Y''' is the version.
   
* '''[http://xenbits.xen.org/hg/xen-4.1-testing.hg xen-4.1-testing.hg]''' (''[http://xenbits.xen.org/hg/staging/xen-4.1-testing.hg staging]'').
+
* e.g. for the Xen Project 4.4.x stable branch: '''[http://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=refs/heads/stable-4.4 stable-4.4]''' (''[http://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=refs/heads/staging-4.4 staging]'')
* '''[http://xenbits.xen.org/gitweb/?p=qemu-xen-4.1-testing.git qemu-xen-4.1-testing.hg]''' (''[http://xenbits.xen.org/gitweb/?p=staging/qemu-xen-4.1-testing.git staging]'').
+
* e.g. for the Xen Project 4.3.x stable branch: '''[http://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=refs/heads/stable-4.3 stable-4.3]''' (''[http://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=refs/heads/staging-4.3 staging]'')
   
== Xen development branch (xen-unstable) ==
+
=== Xen development branch (master) ===
   
These repositories contain the development version of Xen.
+
These branches contain the development version of Xen Project software.
   
* '''[http://xenbits.xen.org/hg/xen-unstable.hg xen-unstable.hg]''' (''[http://xenbits.xen.org/hg/staging/xen-unstable.hg staging]'').
+
* '''[http://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=refs/heads/master master]''' (''[http://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=refs/heads/staging staging]'')
* '''[http://xenbits.xen.org/gitweb/?p=qemu-xen-unstable.git qemu-xen-unstable.hg]''' (''[http://xenbits.xen.org/gitweb/?p=staging/qemu-xen-unstable.git staging]'').
 
   
== Git mirror of Xen ==
+
=== TAGS ===
  +
Releases are tagged using the following conventions:
  +
* '''RELEASE-X.Y.Z''' (e.g. RELEASE-4.4.0 for Xen 4.4, RELEASE-4.3.2 for Xen 4.3.2)
  +
* Release candidates are tagged '''X.Y.Z-rc{number}''' with {number} > 0
   
  +
== Other components hosted or mirrored on xenbits ==
In addition to the mercurial repositories of Xen, there is a Git repository which contains several branches:
 
* master -> xen-unstable.hg
 
* staging -> staging/xen-unstable.hg
 
* staging-4.1 -> staging/xen-4.2-testing.hg
 
* stable-4.1 -> xen-4.2-testing.hg
 
* stable-4.1 -> xen-4.1-testing.hg
 
* stable-4.0 -> xen-4.0-testing.hg
 
   
  +
As well as the Xen Project repository, a Xen system contains several other components either developed as part of Xen Project or incorporated from other projects.
[http://xenbits.xen.org/gitweb/?p=xen.git xen.git]
 
   
== Kernels ==
+
=== Qemu ===
   
  +
Qemu is used to provide device emulation for HVM guests. It can also be used to provide PV backends for some PV devices.
=== Linux ===
 
   
  +
More information can be found at [[QEMU Upstream]]
For more information on selecting suitable domain 0 kernels please see http://wiki.xen.org/xenwiki/XenDom0Kernels.
 
   
  +
==== Qemu Xen Trees ====
The recommended stable Linux kernel branch is:
 
  +
* [http://git.kernel.org/?p=linux/kernel/git/jeremy/xen.git;a=shortlog;h=xen/stable-2.6.32.x xen.git xen/stable-2.6.32.x]
 
  +
Development branch: http://xenbits.xen.org/gitweb/?p=qemu-upstream-unstable.git;a=summary
  +
  +
Stable branches are '''qemu-upstream-X.Y-testing.git'''. e.g.
  +
  +
qemu-upstream-4.3-testing: http://xenbits.xen.org/gitweb/?p=qemu-upstream-4.3-testing.git;a=summary
  +
  +
Upstream: http://www.qemu.org
  +
  +
==== Qemu Xen Traditional Trees ====
  +
  +
Development branch: [http://xenbits.xen.org/gitweb/?p=qemu-xen-unstable.git;a=summary master] ([http://xenbits.xen.org/gitweb/?p=staging/qemu-xen-unstable.git;a=summary staging])
  +
  +
Stable release branches are '''qemu-xen-X.Y-testing.git'''. e.g.
  +
  +
4.3-testing: [http://xenbits.xen.org/gitweb/?p=qemu-xen-4.3-testing.git;a=summary master] ([http://xenbits.xen.org/gitweb/?p=staging/qemu-xen-4.3-testing.git;a=summary staging])
  +
  +
=== Guest Firmware ===
  +
  +
Guest firmware is used with HVM guests.
  +
  +
==== SeaBIOS ====
  +
  +
OVMF is the Legacy BIOS firmware used with '''qemu-xen'''.
  +
  +
http://xenbits.xen.org/gitweb/?p=seabios.git;a=summary
  +
  +
Upstream: http://seabios.org/SeaBIOS
  +
  +
==== OVMF ====
  +
  +
OVMF is the UEFI firmware, it is available with '''qemu-xen'''.
  +
  +
http://xenbits.xen.org/gitweb/?p=ovmf.git;a=summary
  +
  +
Upstream: http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=EDK2
  +
  +
==== ROMBIOS ====
  +
  +
ROMBIOS (used with '''qemu-xen-traditional''') is contained in the main Xen tree at tools/firmware/rombios.
  +
  +
== Other components hosted elsewhere ==
  +
=== Kernels ===
  +
  +
==== Linux ====
  +
  +
Note that the Linux branches are not hosted on xenbits.
  +
  +
For more information on selecting suitable domain 0 kernels please see [[XenDom0Kernels]].
  +
  +
The recommended Linux kernel branch is the upstream stable release branch:
  +
* [http://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary linux-stable.git].
  +
  +
For development the recommended branch is:
  +
* The mainline Linus [http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git linux.git] tree.
  +
  +
To see what's queued for the next release, the next merge window, and other work in progress:
  +
* The Xen subsystem maintainers' [http://git.kernel.org/?p=linux/kernel/git/xen/tip.git;a=summary tip.git] tree.
   
 
Additional information:
 
Additional information:
* List of features in various Xen kernel trees: [[XenKernelFeatures]]
+
* List of features in various Xen Project kernel trees: [[XenKernelFeatures]]
 
* More information about pvops kernels: [[XenParavirtOps]]
 
* More information about pvops kernels: [[XenParavirtOps]]
  +
  +
== Cloning git repositories over http ==
  +
  +
For the benefit of those behind firewalls most git repositories hosted on xenbits are also exposed via http.
  +
  +
For a repository ''git://xenbits.xen.org/foo.git'' you can clone via http using ''http://xenbits.xen.org/git-http/foo.git''.
  +
  +
== Mercurial mirrors of Xen Project software ==
  +
  +
In addition to the git repositories of Xen Project software, there is a Mercurial repository for each branch:
  +
* ''master'': [http://xenbits.xen.org/hg/xen-unstable.hg xen-unstable.hg]
  +
* ''staging'': [http://xenbits.xen.org/hg/staging/xen-unstable.hg staging/xen-unstable.hg]
  +
* ''staging-4.4'': [http://xenbits.xen.org/hg/staging/xen-4.4-testing.hg staging/xen-4.4-testing.hg]
  +
* ''stable-4.4'': [http://xenbits.xen.org/hg/xen-4.4-testing.hg xen-4.4-testing.hg]
  +
* ''staging-4.3'': [http://xenbits.xen.org/hg/staging/xen-4.3-testing.hg staging/xen-4.3-testing.hg]
  +
* ''stable-4.3'': [http://xenbits.xen.org/hg/xen-4.3-testing.hg xen-4.3-testing.hg]
  +
* ''staging-4.2'': [http://xenbits.xen.org/hg/staging/xen-4.2-testing.hg staging/xen-4.2-testing.hg]
  +
* ''stable-4.2'': [http://xenbits.xen.org/hg/xen-4.2-testing.hg xen-4.2-testing.hg]
  +
* ''staging-4.1'': [http://xenbits.xen.org/hg/staging/xen-4.1-testing.hg staging/xen-4.1-testing.hg]
  +
* ''stable-4.1'': [http://xenbits.xen.org/hg/xen-4.1-testing.hg xen-4.1-testing.hg]
  +
  +
As well as these previous staging and stable branches can be found at [http://xenbits.xen.org/hg/ http://xenbits.xen.org/hg/].
   
 
== Browse all source repositories hosted on xenbits ==
 
== Browse all source repositories hosted on xenbits ==
   
* [http://xenbits.xen.org/hg/ Mercurial Repositories]
 
 
* [http://xenbits.xen.org/gitweb/ Git Repositories]
 
* [http://xenbits.xen.org/gitweb/ Git Repositories]
  +
* [http://xenbits.xen.org/hg/ Mercurial Repositories]
 
* [http://xenbits.xen.org/ext/ Additional Mercurial Repositories]
 
* [http://xenbits.xen.org/ext/ Additional Mercurial Repositories]
   

Revision as of 12:06, 2 April 2014

Version Control

As of February 2013 Xen is maintained using the GIT version control system. Previously, the Xen Project was maintained in Mercurial and mirrors of git into mercurial are still provided.

Staging

All changes to Xen Project software, whether to mainline or a stable branch, are initially pushed to a staging branch. These staging branches are then tested using the automated test system. When the tests passed the staging trees are automatically pushed to the primary trees.

Repositories

Primary Xen Project Repository

The main Xen Project repository is git://xenbits.xen.org/xen.git. This single repository contains branches for each of the stable maintenance branches as well as development and staging branches.

Stable release branches (stable-4.4, stable-4.3, ...)

More information on stable releases can be found in Xen Project Maintenance Releases.

The latest stable release from this branch is available from http://xenproject.org/downloads/xen-archives.html.

These branches contain the in-progress work on the next release on the previous stable branch and are named stable-X.Y (and staging-X.Y) where X.Y is the version.

Xen development branch (master)

These branches contain the development version of Xen Project software.

TAGS

Releases are tagged using the following conventions:

  • RELEASE-X.Y.Z (e.g. RELEASE-4.4.0 for Xen 4.4, RELEASE-4.3.2 for Xen 4.3.2)
  • Release candidates are tagged X.Y.Z-rc{number} with {number} > 0

Other components hosted or mirrored on xenbits

As well as the Xen Project repository, a Xen system contains several other components either developed as part of Xen Project or incorporated from other projects.

Qemu

Qemu is used to provide device emulation for HVM guests. It can also be used to provide PV backends for some PV devices.

More information can be found at QEMU Upstream

Qemu Xen Trees

Development branch: http://xenbits.xen.org/gitweb/?p=qemu-upstream-unstable.git;a=summary

Stable branches are qemu-upstream-X.Y-testing.git. e.g.

qemu-upstream-4.3-testing: http://xenbits.xen.org/gitweb/?p=qemu-upstream-4.3-testing.git;a=summary

Upstream: http://www.qemu.org

Qemu Xen Traditional Trees

Development branch: master (staging)

Stable release branches are qemu-xen-X.Y-testing.git. e.g.

4.3-testing: master (staging)

Guest Firmware

Guest firmware is used with HVM guests.

SeaBIOS

OVMF is the Legacy BIOS firmware used with qemu-xen.

http://xenbits.xen.org/gitweb/?p=seabios.git;a=summary

Upstream: http://seabios.org/SeaBIOS

OVMF

OVMF is the UEFI firmware, it is available with qemu-xen.

http://xenbits.xen.org/gitweb/?p=ovmf.git;a=summary

Upstream: http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=EDK2

ROMBIOS

ROMBIOS (used with qemu-xen-traditional) is contained in the main Xen tree at tools/firmware/rombios.

Other components hosted elsewhere

Kernels

Linux

Note that the Linux branches are not hosted on xenbits.

For more information on selecting suitable domain 0 kernels please see XenDom0Kernels.

The recommended Linux kernel branch is the upstream stable release branch:

For development the recommended branch is:

To see what's queued for the next release, the next merge window, and other work in progress:

  • The Xen subsystem maintainers' tip.git tree.

Additional information:

Cloning git repositories over http

For the benefit of those behind firewalls most git repositories hosted on xenbits are also exposed via http.

For a repository git://xenbits.xen.org/foo.git you can clone via http using http://xenbits.xen.org/git-http/foo.git.

Mercurial mirrors of Xen Project software

In addition to the git repositories of Xen Project software, there is a Mercurial repository for each branch:

As well as these previous staging and stable branches can be found at http://xenbits.xen.org/hg/.

Browse all source repositories hosted on xenbits