3.11. Upgrading
***************

You can upgrade Bugzilla from any version to any later version in one
go - there is no need to pass through intermediate versions unless you
are changing the method by which you obtain the code along the way.

Warning:

  Upgrading is a one-way process. You cannot “downgrade” an upgraded
  Bugzilla. If you wish to revert to the old Bugzilla version for any
  reason, you will have to restore your system from a backup. Those
  with critical data or large installations may wish to test the
  upgrade on a development server first, using a copy of the
  production data and configuration.

Bugzilla uses the Git version control system to store its code. A
modern Bugzilla installation consists of a checkout of a stable
version of the code from our Git repository. This makes upgrading much
easier. If this is already true of your installation, see Upgrading
with Git.

Before Git, we used to use Bazaar and, before that, CVS. If your
installation of Bugzilla consists of a checkout from one of those two
systems, you need to upgrade in three steps:

1. Upgrade to the latest point release of your current Bugzilla
   version.

2. Move to Git while staying on exactly the same release.

3. Upgrade to the latest Bugzilla using the instructions for Upgrading
   with Git.

See Migrating from Bazaar or Migrating from CVS as appropriate.

Some Bugzillas were installed simply by downloading a copy of the code
as an archive file (“tarball”). However, recent tarballs have included
source code management system information, so you may be able to use
the Git, Bzr or CVS instructions.

If you aren’t sure which of these categories you fall into, to find
out which version control system your copy of Bugzilla recognizes,
look for the following subdirectories in your root Bugzilla directory:

* ".git": you installed using Git - follow Upgrading with Git.

* ".bzr": you installed using Bazaar - follow Migrating from Bazaar.

* "CVS": you installed using CVS - follow Migrating from CVS.

* None of the above: you installed using an old tarball - follow
  Migrating from a Tarball.

It is also possible, particularly if your server machine does not have
and cannot be configured to have access to the public internet, to
upgrade using a tarball. See Upgrading with a Tarball.

Whichever path you use, you may need help with Upgrading a Customized
or Extended Bugzilla.

* 3.11.1. Upgrading with Git

* 3.11.2. Migrating from Bazaar

* 3.11.3. Migrating from CVS

* 3.11.4. Migrating from a Tarball

* 3.11.5. Upgrading with a Tarball

* 3.11.6. Upgrading a Customized or Extended Bugzilla

Bugzilla can automatically notify administrators when new releases are
available if the upgrade_notification parameter is set. Administrators
will see these notifications when they access the Bugzilla home page.
Bugzilla will check once per day for new releases. If you are behind a
proxy, you may have to set the proxy_url parameter accordingly. If the
proxy requires authentication, use the http://user:pass@proxy_url/
syntax.

======================================================================

This documentation undoubtedly has bugs; if you find some, please file
them here.
