docs: def rollback():
      """
      Reverts project state to the last deploy.
      When a deploy is performed, the current state of the project is
      backed up. This includes the project files, the database, and all static
      files. Calling rollback will revert all of these to their state prior to
      the last deploy.
      """
      with update_changed_requirements():
          if env.deploy_tool in env.vcs_tools:
              with cd(env.repo_path):
                  if env.deploy_tool == "git":
                          run("GIT_WORK_TREE={0} git checkout -f "
                              "`cat {0}/last.commit`".format(env.proj_path))
                  elif env.deploy_tool == "hg":
                          run("hg update -C `cat last.commit`")
              with project():
                  with cd(join(static(), "..")):
                      run("tar -xf %s/static.tar" % env.proj_path)
          else:
              with cd(env.proj_path.rsplit("/", 1)[0]):
                  run("rm -rf %s" % env.proj_name)
                  run("tar -xf %s.tar" % env.proj_name)
      with cd(env.proj_path):
          restore("last.db")
      restart()