Getting the latest source code

From xfs.org
Revision as of 09:39, 31 December 2008 by Vapier (talk | contribs) (fix whitespace in git example)

XFS: Source Code

There are several ways to access the current XFS code.

  • Mainline kernels
    XFS has been maintained in the official Linux kernel kernel trees starting with Linux 2.4 and is frequently updated with the latest stable fixes and features from the SGI XFS development team.
  • Vendor kernels
    All modern Linux distributions include support for XFS. SGI actively works with SUSE to provide a supported version of XFS in that distribution.
  • XFS userspace
    Sgi also provides source code taballs of the xfs userspace tools. These tarballs form the basis of the xfsprogs packages found in Linux distributions.
  • CVS trees
    Direct CVS access to the most recent XFS changes. See below.

Using CVS trees

The cvs trees are automated mirrors of the SGI internal ptools manage source trees.

CVS for new users contains links to general CVS documentation.

Set the CVSROOT environment variable.


$ export CVSROOT=':pserver:cvs@oss.sgi.com:/cvs'
(for sh, bash, ksh, or similar shells)
$ setenv CVSROOT :pserver:cvs@oss.sgi.com:/cvs
(for csh or tcsh shells)

Login to the CVS server (this only needs to be done ONCE, not every time you access CVS).


$ cvs login
(the password is "cvs")

Now grab the XFS source tree(s) of interest:


$ cvs checkout linux-2.6-xfs
$ cvs checkout xfs-cmds

Subsequently, you can checkout new code using:


$ cvs update -d

Using GIT trees

The Git trees are automated mirrored copied of the cvs trees using git-cvsimport. Since git-cvsimport utilized the tool cvsps to recreate the atomic commits of ptools or "mod" it is easier to see the entire change that was committed using git.

git-cvsimport generated trees.

Changes headed for the main linux 2.6 tree, manual merges.

Cloning the git trees for local use:


$ git clone git://oss.sgi.com/linux-2.6-xfs-from-cvs
$ git clone git://oss.sgi.com/xfs-cmds
$ git clone git://oss.sgi.com/xfs/xfs-2.6