This page describes how to move your Stash installation from one physical machine to a different machine. For most scenarios, the overall procedure involves the following 4 steps, although your situation may not require all of these:

  1. Prepare for the migration.
  2. Move the Stash data.
  3. Move the Stash installation to the new location, and update the value of the STASH_HOME environment variable.
  4. Update the Stash stash-config.properties file. This will be necessary if you were unable to use the Migration Wizard in Step 2.

See also the Stash upgrade guide. You can upgrade Stash either before or after you migrate Stash. This page does not describe any aspect of the upgrade procedure.

On this page:

Related pages:

1. Prepare for the migration

In preparation for migrating Stash to another server, check that you have done the following:

2. Move the Stash data to a different machine

This section gives a brief overview of how to move the Stash data to a different machine. You do not need to do anything in this section if you will continue to use the embedded database - the Stash data is moved when you move the Stash installation.

The Stash data includes the data directories (including the Git repositories), log files, installed plugins, temporary files and caches.

You can move the Stash data:

You can also move the actual DBMS. Atlassian recommends that for large installations, Stash and the DBMS run on separate machines.

There are 2 steps:

  1. Create and configure the DBMS in the new location. Please refer to Connecting Stash to an external database, and the relevant child page, for more information.
  2. Either:

3. Move Stash to a different machine

This section describes moving the Stash installation to a different machine.

  1. Stop Stash. See Starting and stopping Stash.
  2. Make an archive (such as a zip file) of the Stash home directory. The home directory contains data directories (including the Git repositories), log files, installed plugins, SSH fingerprints, temporary files and caches. The home directory location is defined:
  3. Copy the archive of the Stash home directory to the new machine and unzip it to its new location there.

  4. Set up an instance of Stash in the new location by doing one of the following:
  5. Redefine the value for STASH_HOME, mentioned in Step 2. above, in the new <Stash installation directory>, using the new location for your copied home directory. See Stash home directory for more information.
  6. If you are continuing to use the Stash embedded database, or you used the Migration Wizard to move the Stash data, you should now be able to start Stash on the new machine and have all your data available. See Starting and stopping Stash. Once you have confirmed that the new installation of Stash is working correctly, revert the access permissions for Stash to their original values.
  7. If you moved the Stash data by performing a database export and import, carry on to Step 4. below to update the stash-config.properties file in the <Stash home directory>.

4. Update the Stash configuration

If you moved the Stash data by performing a database export, you must update the stash-config.properties file in the <Stash home directory> with the changed configuration parameters for the database connection.

The configuration parameters are described in Stash config properties.

Once the configuration parameters are updated, you should be able to start Stash on the new machine and have all your data available. See Starting and stopping Stash. Once you have confirmed that the new installation of Stash is working correctly, revert the access permissions for Stash to their original values.