Table of Contents


All of the Apache Tomcat source code, documentation and this web site are managed under version control using Subversion. This page explains the structure of the Apache Tomcat Subversion repository. The page assumes you are familiar with the general Apache guidance for Subversion.

All Subversion links on this page use anonymous access.

Repository Structure

The root of the repository is

Note: there is also ViewVC-powered web view of the repository.

The directories below this level are:

/archive/ Modules that are no longer maintained
/jk/ The native source code for the Tomcat Connectors. This includes mod_jk, isapi and nsapi. The current code is in /jk/trunk/.
/maven-plugin/ The Apache Tomcat Maven Plugin source code and website.
/native/ The native source code for the Tomcat Native/APR Connector. The current code is in /native/branches/1.1.x/ (1.1.x) and /native/trunk/ (1.2.x).
/sandbox/ An area where Tomcat committers can experiment with new ideas.
/site/ The Apache Tomcat website.
/taglibs/ The Apache Taglibs source code and website.
/tags/ Tags for the primary development branch. Mainly used for modules.
/tc7.0.x/ The stable Tomcat 7.0.x release branch. See /tc7.0.x/trunk/.
/tc8.5.x/ The Tomcat 8.5.x release branch. See /tc8.5.x/trunk/.
/trunk/ The primary development branch. Tomcat 9.0.x. Changes are first implemented here, then backported to other branches.

Line endings

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.

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.

Git Mirror

The Apache Software Foundation provides read-only Git mirrors for its projects. See

Several notes for the users of Git:

  1. The Git repositories at and their clones at GitHub are only mirrors. The official code repository is the Subversion one, documented above.
  2. To propose a patch, please follow general patch submission guidelines, documented on the Bug Database page.