[Other doc versions]
[Doc downloads]
Atlassian Stash is the Git code management solution for enterprise teams. It allows everyone in your organisation to easily collaborate on your Git repositories, while providing enterprise-grade support for:
This page describes best practice for using Stash in enterprise environments, that is with 500+ user licenses. Of course, much of this information is also applicable to other Stash installations.
On this page:
Although Stash can be run on Windows, Linux and Mac systems, for enterprise use we only recommend, and support, Linux. This recommendation is based on our own testing and experience with using Stash.
See the Supported platforms page for details of the supported versions of Java, external databases, web browsers and Git.
In general, Stash is very stable and has low memory consumption. There are no scalability limits other than for Git hosting operations (clone in particular). We know this is the scalability limit of the product; the limit is proportional to the number of cores on the system.
As an example, data collected from an internal Stash instance indicate that for a team of approximately 50 developers, with associated continuous integration infrastructure, we see a peak concurrency of 30 simultaneous clone operations and a mean of 2 simultaneous clone operations. We conservatively expect that a customer with similar usage patterns would be capable of supporting 1000 users on a machine with 40 cores and a supporting amount of RAM. While we expect a peak concurrency larger than 40, Stash is designed to queue incoming requests so as to avoid overwhelming the server. See Stash production server data for data from the Stash production instance we run internally at Atlassian.
See Scaling Stash for more information about Stash performance and hardware requirements.
See Scaling Stash for Continuous Integration performance for information specific to Stash performance when CI tools poll Stash for changes.
If Stash is a critical part of your development workflow, maximizing Stash availability becomes an important consideration. Please see High availability for Stash for the background information you need to set up Stash in a highly available configuration.
When setting up Stash for a production or enterprise environment, we highly recommend that you configure the following aspects:
<STASH_HOME>
/log
. Logs for the bundled Tomcat webserver can be found in
<Stash installation directory>
/log
. See Stash debug logging.<Stash home directory
>/audit/logs
directory. Note that Stash has an upper limit to the number of log files it maintains, and deletes the oldest file when a new file is created – we recommend an automated backup of log files. See Audit logging in Stash.