<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
  ~ Licensed to the Apache Software Foundation (ASF) under one
  ~ or more contributor license agreements.  See the NOTICE file
  ~ distributed with this work for additional information
  ~ regarding copyright ownership.  The ASF licenses this file
  ~ to you under the Apache License, Version 2.0 (the
  ~ "License"); you may not use this file except in compliance
  ~ with the License.  You may obtain a copy of the License at
  ~
  ~ http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing,
  ~ software distributed under the License is distributed on an
  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  ~ KIND, either express or implied.  See the License for the
  ~ specific language governing permissions and limitations
  ~ under the License.
  -->

<project>
  <bannerLeft>
    <name>Maven</name>
    <src>http://maven.apache.org/maven2/images/apache-maven-project-2.png</src>
    <href>http://maven.apache.org/</href>
  </bannerLeft>
  <bannerRight>
    <src>http://maven.apache.org/maven2/images/maven-logo-2.gif</src>
  </bannerRight>

  <skin>
    <groupId>org.apache.maven.skins</groupId>
    <artifactId>maven-stylus-skin</artifactId>
    <version>1.0.1</version>
  </skin>

  <publishDate format="yyyy-MM-dd" position="left" />
  <version position="left" />

  <body>
    <head>
      <script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
      </script>
      <script type="text/javascript">
        _uacct = "UA-140879-1";
        urchinTracker();
      </script>
    </head>

    <links>
      <item name="Apache" href="http://www.apache.org/"/>
      <item name="Maven 1.x" href="http://maven.apache.org/maven-1.x"/>
      <item name="Maven 2.x" href="http://maven.apache.org/"/>
      <item name="SCM" href="http://maven.apache.org/scm"/>
      <item name="Wagon" href="http://maven.apache.org/wagon"/>
      <item name="JXR" href="http://maven.apache.org/jxr"/>
      <item name="Doxia" href="http://maven.apache.org/doxia"/>
    </links>

    <menu ref="modules" />

    <menu name="Quick Links">
      <item name="Home" href="/index.html"/>
      <item name="Javadoc" href="/apidocs/index.html"/>
      <item name="SCM URL Format" href="/scm-url-format.html"/>
      <item name="Supported SCMs" href="/scms-overview.html" collapse="true">
        <item name="Accurev" href="/accurev.html"/>
        <item name="Bazaar" href="/bazaar.html"/>
        <item name="Mercurial" href="/mercurial.html"/>
        <item name="Clearcase" href="/clearcase.html"/>
        <item name="CM Synergy" href="/synergy.html"/>
        <item name="CVS" href="/cvs.html"/>
        <item name="Git" href="/git.html"/>
        <item name="Local" href="/local.html"/>
        <item name="Perforce" href="/perforce.html"/>
        <item name="StarTeam" href="/starteam.html"/>
        <item name="Subversion" href="/subversion.html"/>
        <item name="Visual Source Safe" href="/vss.html"/>
      </item>
      <item name="Guides" href="/guide/index.html" collapse="true">
        <item name="How to use Maven-SCM in my application" href="/guide/usage.html"/>
        <item name="How to write a new SCM provider" href="/guide/new_provider.html"/>
      </item>
      <item name="SCM Providers Matrix" href="/matrix.html"/>
    </menu>

    <menu ref="reports"/>
  </body>
</project>
