satis egitimisatis


Discussion on the state of cloud computing and open source software that helps build, manage, and deliver everything-as-a-service.

  • Home
    Home This is where you can find all the blog posts throughout the site.
  • Categories
    Categories Displays a list of categories from this blog.
  • Tags
    Tags Displays a list of tags that has been used in the blog.
  • Bloggers
    Bloggers Search for your favorite blogger from this site.
  • Login
Posted by on in Cloud Computing Trends
  • Font size: Larger Smaller
  • Hits: 2211
  • Print
  • Report this post

Git branches - a quick explanation to whats going on in CloudStack development.

A number of questions have been posed to me of late and brought me to the realization that CloudStacks repo structure is poorly documented, so this is at least an attempt at a CloudStack git repo disambiguation page.

CloudStack maintains a number of branches in the git repo, the most interesting of these are master and 2.2.y. All of the future 2.2 releases have their start from the 2.2.y branch. For larger features, development and testing will be branched off of the 2.2.y branch. In example, the 2.2.y-clvm branch is 2.2.y with the Clustered LVM feature added. Once that feature is tested and ready to go it can be merged back in to 2.2.y.

Master, which is where Acton (v3.0) is currently being developed, is a bit more cutting edge.

How does all of this move from a rather generic branch to what we actually produce a release from? Well, when a release hits code freeze, another version-specific branch is typically created. In example, 2.2.12 has a targeted code freeze of 9/14/2011, and if all goes according to schedule the 2.2.12 branch will be created from 2.2.y on that date. This allows development on the 2.2.y branch to continue to progress, while hopefully stabilizing 2.2.12 and letting the focus on that branch be about solving those version specific bugs.

Finally, when a version specific branch is declared 'gold' and ready for release, the release engineering team will tag the release with the version number. To ensure there are no conflicts with the version specific branches, the tag will have tag- prepended. So when 2.2.12 is tagged for release it will be tag-2.2.12. All of the releases are built from the versioned tag.

Hopefully this helps clear up some of the confusion. If, however, you have more questions, please don't hesitate to ask on the cloudstack-devel mailing list.

Rate this blog entry:
Trackback URL for this blog entry.
David Nalley is currently employed by Citrix as the Community Manager for the CloudStack project. In addition he's a long time contributor to the Fedora Project, where among other things he is currently serving on the Fedora Project Board. He's also contributed to in various forms to Cobbler, Zenoss,, OLPC Math4, and Sahana. He is a frequent speaker at Free Software conferences around the nation, and writes for a number of technical and open source media publications including Linux Pro Magazine and
  • No comments made yet. Be the first to submit a comment

Leave your comment

Guest Friday, 18 July 2014


Citrix supports the open source community via developer support and evangeslism. We have a number of developers and evangelists that participate actively in the open source community in Apache Cloudstack, OpenDaylight, Xen Project and XenServer. We also conduct educational activities via the Build A Cloud events held all over the world.