<!DOCTYPE html SYSTEM "about:legacy-compat">
<html lang="en"><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link href="res/css/tomcat.css" rel="stylesheet" type="text/css"><link href="res/css/fonts/fonts.css" rel="stylesheet" type="text/css"><title>Apache Tomcat&reg; - Repository Access</title><script src="https://www.apachecon.com/event-images/snippet.js"></script></head><body><div id="wrapper"><header id="header"><div class="clearfix"><div class="menu-toggler pull-left" tabindex="1"><div class="hamburger"></div></div><a href="http://tomcat.apache.org/"><img class="tomcat-logo pull-left noPrint" alt="Tomcat Home" src="res/images/tomcat.png"></a><h1 class="pull-left">Apache Tomcat<sup>&reg;</sup></h1><div class="asf-logos pull-right"><a href="https://www.apache.org/foundation/contributing.html" target="_blank" class="pull-left"><img src="https://www.apache.org/images/SupportApache-small.png" class="support-asf" alt="Support Apache"></a><a href="http://www.apache.org/" target="_blank" class="pull-left"><img src="res/images/asf_logo_wide.svg" class="asf-logo" alt="The Apache Software Foundation"></a></div></div></header><main id="middle"><div><div id="mainLeft"><div id="nav-wrapper"><form action="https://www.google.com/search" method="get"><div class="searchbox"><input value="tomcat.apache.org" name="sitesearch" type="hidden"><input aria-label="Search text" placeholder="Search&hellip;" required="required" name="q" id="query" type="search"><button>GO</button></div></form><div class="asfevents"><a class="acevent" data-format="square" data-width="150"></a></div><nav><div><h2>Apache Tomcat</h2><ul><li><a href="./index.html">Home</a></li><li><a href="./taglibs.html">Taglibs</a></li><li><a href="./maven-plugin.html">Maven Plugin</a></li></ul></div><div><h2>Download</h2><ul><li><a href="./whichversion.html">Which version?</a></li><li><a href="https://tomcat.apache.org/download-11.cgi">Tomcat 11</a></li><li><a href="https://tomcat.apache.org/download-10.cgi">Tomcat 10</a></li><li><a href="https://tomcat.apache.org/download-90.cgi">Tomcat 9</a></li><li><a href="https://tomcat.apache.org/download-migration.cgi">Tomcat Migration Tool for Jakarta EE</a></li><li><a href="https://tomcat.apache.org/download-connectors.cgi">Tomcat Connectors</a></li><li><a href="https://tomcat.apache.org/download-native.cgi">Tomcat Native</a></li><li><a href="https://tomcat.apache.org/download-taglibs.cgi">Taglibs</a></li><li><a href="https://archive.apache.org/dist/tomcat/">Archives</a></li></ul></div><div><h2>Documentation</h2><ul><li><a href="./tomcat-11.0-doc/index.html">Tomcat 11.0</a></li><li><a href="./tomcat-10.1-doc/index.html">Tomcat 10.1</a></li><li><a href="./tomcat-9.0-doc/index.html">Tomcat 9.0</a></li><li><a href="./upgrading.html">Upgrading</a></li><li><a href="./connectors-doc/index.html">Tomcat Connectors</a></li><li><a href="./native-doc/index.html">Tomcat Native 2</a></li><li><a href="./native-1.3-doc/index.html">Tomcat Native 1.3</a></li><li><a href="https://cwiki.apache.org/confluence/display/TOMCAT">Wiki</a></li><li><a href="./migration.html">Migration Guide</a></li><li><a href="./presentations.html">Presentations</a></li><li><a href="https://cwiki.apache.org/confluence/x/Bi8lBg">Specifications</a></li></ul></div><div><h2>Problems?</h2><ul><li><a href="./security.html">Security Reports</a></li><li><a href="./findhelp.html">Find help</a></li><li><a href="https://cwiki.apache.org/confluence/display/TOMCAT/FAQ">FAQ</a></li><li><a href="./lists.html">Mailing Lists</a></li><li><a href="./bugreport.html">Bug Database</a></li></ul></div><div><h2>Get Involved</h2><ul><li><a href="./getinvolved.html">Overview</a></li><li><a href="./source.html">Source code</a></li><li><a href="./ci.html">Buildbot</a></li><li><a href="./tools.html">Tools</a></li></ul></div><div><h2>Media</h2><ul><li><a href="https://www.youtube.com/c/ApacheTomcatOfficial">YouTube</a></li></ul></div><div><h2>Misc</h2><ul><li><a href="./whoweare.html">Who We Are</a></li><li><a href="https://www.redbubble.com/people/comdev/works/30885254-apache-tomcat">Swag</a></li><li><a href="./heritage.html">Heritage</a></li><li><a href="http://www.apache.org">Apache Home</a></li><li><a href="./resources.html">Resources</a></li><li><a href="./contact.html">Contact</a></li><li><a href="./legal.html">Legal</a></li><li><a href="https://privacy.apache.org/policies/privacy-policy-public.html">Privacy</a></li><li><a href="https://www.apache.org/foundation/contributing.html">Support Apache</a></li><li><a href="https://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li><li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li><li><a href="http://www.apache.org/licenses/">License</a></li></ul></div></nav></div></div><div id="mainRight"><div id="content"><h2 style="display: none;">Content</h2><h3 id="Table_of_Contents">Table of Contents</h3><div class="text">
<ul><li><a href="#Version_Control">Version Control</a></li><li><a href="#Git">Git</a></li><li><a href="#tomcat.git">tomcat.git</a></li><li><a href="#tomcat-connectors.git">tomcat-connectors.git</a></li><li><a href="#tomcat-native.git">tomcat-native.git</a></li><li><a href="#tomcat-taglibs-parent.git">tomcat-taglibs-parent.git</a></li><li><a href="#tomcat-taglibs-standard.git">tomcat-taglibs-standard.git</a></li><li><a href="#tomcat-taglibs-rdc.git">tomcat-taglibs-rdc.git</a></li><li><a href="#tomcat-taglibs-site.git">tomcat-taglibs-site.git</a></li><li><a href="#tomcat-maven-plugin.git">tomcat-maven-plugin.git</a></li><li><a href="#tomcat-jakartaee-migration.git">tomcat-jakartaee-migration.git</a></li><li><a href="#Subversion_Repository">Subversion Repository</a><ol><li><a href="#Line_endings">Line endings</a></li></ol></li></ul>
</div><h3 id="Version_Control">Version Control</h3><div class="text">

<p>The Apache Tomcat<sup>&reg;</sup> project is in the process of migrating from Subversion to
Git for version control. The following components use Git:
</p>
<ul>
<li>Apache Tomcat 11.0.x</li>
<li>Apache Tomcat 10.1.x</li>
<li>Apache Tomcat 9.0.x</li>
<li>Apache Tomcat Connectors</li>
<li>Apache Tomcat Native</li>
<li>Taglibs</li>
<li>Tomcat Maven plugin</li>
<li>Apache Tomcat migration tool for Jakarta EE</li>
</ul>
<p>The following components currently use Subversion as the primary version
control system:</p>
<ul>
<li>Tomcat web site</li>
<li>archive</li>
</ul>
</div><h3 id="Git">Git</h3><div class="text">

<p>The ASF operates a dual primary system for repositories that use Git as their
primary version control system. This means committers may commit to either
gitbox.apache.org or GitHub.</p>

<p>For repositories that are mirrored to Git from Subversion, the mirrors may be
found at git.apache.org or GitHub and are read-only for everyone.</p>

</div><h3 id="tomcat.git">tomcat.git</h3><div class="text">

<p>This is the Git repository that contains the Apache Tomcat source code. There
are currently four branches:</p>
<ul>
<li>main</li>
<li>11.0.1</li>
<li>10.1.x</li>
<li>9.0.x</li>
</ul>
<p>main is the primary development branch. Apache Tomcat 12.0.x releases are
tagged from this branch. Development work generally occurs in this branch
first.</p>
<p>11.0.x is the stable release branch for Apache Tomcat 11.0.x. Generally,
fixes are cherry picked from main into this branch.</p>
<p>10.1.x is the stable release branch for Apache Tomcat 10.1.x. Generally,
fixes are cherry picked from 11.0.x into this branch.</p>
<p>9.0.x is the stable release branch for Apache Tomcat 9.0.x. Generally, fixes
are cherry picked from 10.1.x into this branch.</p>
<p>A web based view of this repository is available via
<a href="https://github.com/apache/tomcat">GitHub</a>.</p>
</div><h3 id="tomcat-connectors.git">tomcat-connectors.git</h3><div class="text">

<p>This is the Git repository that contains the Apache Tomcat Connectors source
code. This includes mod_jk and isapi. There is currently one active branch:</p>
<ul>
<li>main</li>
</ul>
<p>main is the primary development branch. Apache Tomcat Connectors 1.2.x releases
are tagged from this branch. Development work generally occurs in this branch
first.</p>
<p>A web based view of this repository is available via
<a href="https://github.com/apache/tomcat-connectors">GitHub</a>.</p>
</div><h3 id="tomcat-native.git">tomcat-native.git</h3><div class="text">

<p>This is the Git repository that contains the Apache Tomcat Native source
code. There is currently one active branch:</p>
<ul>
<li>main</li>
</ul>
<p>main is the primary development branch. Apache Tomcat Native 1.2.x releases
are tagged from this branch. Development work generally occurs in this branch
first.</p>
<p>A web based view of this repository is available via
<a href="https://github.com/apache/tomcat-native">GitHub</a>.</p>
</div><h3 id="tomcat-taglibs-parent.git">tomcat-taglibs-parent.git</h3><div class="text">

<p>This is the Git repository that contains the parent POM for the Apache Tomcat
Tag Libraries. There is currently one active branch:</p>
<ul>
<li>main</li>
</ul>
<p>main is the only development branch. All development work occurs in this
branch.</p>
<p>A web based view of this repository is available via
<a href="https://github.com/apache/tomcat-taglibs-parent">GitHub</a>.</p>
</div><h3 id="tomcat-taglibs-standard.git">tomcat-taglibs-standard.git</h3><div class="text">

<p>This is the Git repository that contains the Apache Tomcat Standard Tag
Library. There is currently one active branch:</p>
<ul>
<li>main</li>
</ul>
<p>main is the only development branch. All development work occurs in this
branch.</p>
<p>A web based view of this repository is available via
<a href="https://github.com/apache/tomcat-taglibs-standard">GitHub</a>.</p>
</div><h3 id="tomcat-taglibs-rdc.git">tomcat-taglibs-rdc.git</h3><div class="text">

<p>This is the Git repository that contains the Apache Tomcat RDC Tag Library.
There is currently one active branch:</p>
<ul>
<li>main</li>
</ul>
<p>main is the only development branch. All development work occurs in this
branch.</p>
<p>A web based view of this repository is available via
<a href="https://github.com/apache/tomcat-taglibs-rdc">GitHub</a>.</p>
</div><h3 id="tomcat-taglibs-site.git">tomcat-taglibs-site.git</h3><div class="text">

<p>This is the Git repository that contains the web site for the Apache Tomcat
Tag Libraries. There is currently one active branch:</p>
<ul>
<li>main</li>
</ul>
<p>main is the only development branch. All development work occurs in this
branch.</p>
<p>A web based view of this repository is available via
<a href="https://github.com/apache/tomcat-taglibs-site">GitHub</a>.</p>
</div><h3 id="tomcat-maven-plugin.git">tomcat-maven-plugin.git</h3><div class="text">

<p>This is the The Apache Tomcat Maven Plugin source code and web site.
There are currently one active branch:</p>
<ul>
<li>trunk</li>
</ul>
<p>trunk is the only development branch. All development work occurs in this
branch.</p>
<p>A web based view of this repository is available via
<a href="https://github.com/apache/tomcat-maven-plugin">GitHub</a>.</p>
</div><h3 id="tomcat-jakartaee-migration.git">tomcat-jakartaee-migration.git</h3><div class="text">

<p>This is the The Apache Tomcat Jakarta EE Migration Tool source code.
There are currently one active branch:</p>
<ul>
<li>main</li>
</ul>
<p>main is the only development branch. All development work occurs in this
branch.</p>
<p>A web based view of this repository is available via
<a href="https://github.com/apache/tomcat-jakartaee-migration">GitHub</a>.</p>
</div><h3 id="Subversion_Repository">Subversion Repository</h3><div class="text">

<p>The root of the repository is
<a href="http://svn.apache.org/repos/asf/tomcat">
http://svn.apache.org/repos/asf/tomcat</a>.</p>

<p><em>Note:</em> there is also ViewVC-powered
<a href="http://svn.apache.org/viewvc/tomcat/">web view of the repository</a>.</p>

<p>The directories below this level are:</p>
<table class="defaultTable noHighlight">
  <tr>
    <th>Directory</th><th>Contents</th>
  </tr>
  <tr>
    <td><a href="http://svn.apache.org/repos/asf/tomcat/archive">
        <code>/archive/</code></a></td>
    <td>Modules that are no longer maintained or have been moved to git</td>
  </tr>
  <tr>
    <td><a href="http://svn.apache.org/repos/asf/tomcat/sandbox">
        <code>/sandbox/</code></a></td>
    <td>An area where Tomcat committers can experiment with new ideas.</td>
  </tr>
  <tr>
    <td><a href="http://svn.apache.org/repos/asf/tomcat/site">
        <code>/site/</code></a></td>
    <td>The Apache Tomcat website.</td>
  </tr>
</table>

<div class="subsection"><h4 id="Line_endings">Line endings</h4><div class="text">

<p>The repositories are configured so that when you check out from svn, you get
the line ending appropriate for your platform for all files. The thinking behind
this is that, for example, if you need to fix a typo in a .bat file from MacOS,
it is easier if the .bat file has MacOS line-endings.</p>

<p>When you build locally, line-endings are not changed. The expectation is that
the source has the correct line-endings for your platform so all the files that
matter on your platform will have the correct line endings. When you are on
Windows it doesn't matter if the .sh files have Windows line-endings since
you'll never use them on Windows.</p>

</div></div>

</div></div></div></div></main><footer id="footer">
    Copyright &copy; 1999-2026, The Apache Software Foundation
    <br>
    Apache Tomcat, Tomcat, Apache, the Apache Tomcat logo and the Apache logo
    are either registered trademarks or trademarks of the Apache Software
    Foundation.
  </footer></div><script src="res/js/tomcat.js"></script></body></html>