Using Drush Rebuild

Drush Rebuild is a utility for rebuilding a local development environment from, for example, the production environment. Drush Rebuild uses Drush aliases and an easy-to-read YAML configuration file.

To use Rebuild you must know how to work with drush aliases.

Installation & configuration

Installation

Rebuild can be installed with drush or git.

Using drush: drush dl rebuild

Setting up SSH access on Windows

In Windows, after installing Drush through the installer, some extra configuration is needed in order to execute commands in remote systems or synchronize data.

First of all, unless you are sure that when you installed Drush you marked the components "cwRsync" and "Register Environment Variables", launch the Drush installer again, click on Change and install them. This will set up your PATH variable with the location of every program that Drush needs and install cwRsync in order to use the Drush command core-rsync.

That being done, you will have to create your home path where cwRsync has been installed. this directory will be used to store your SSH key. Follow these steps to generate your SSH key and copy it to the remote host:

  1. Open the command line interpreter by going to Start > Execute > type cmd and hit Enter.
  2. Go to the cwRsync installation directory:
    cd C:\Program Files\Propeople\Drush\cwRsync
  3. Create your home directory at this level. It should be "home/your Windows username". If you type your username wrong, you will get an error later on when we execute a command for a remote Drupal site which will let you know how should the folder under home be called.

    mkdir home
    cd home

Drush Site Alias example

The following example is a template to create aliases for a local site and the site on a development server.

/**
 * @file yoursite.aliases.drushrc.php
 * Site aliases for [your site domain]
 * Place this file at ~/.drush/  (~/ means your home path)
 *
 * Usage:
 *   To copy the development database to your local site:
 *   $ drush sql-sync @yoursite.dev @yoursite.local
 *   To copy your local database to the development site:
 *   $ drush sql-sync @yoursite.local @yoursite.dev --structure-tables-key=common --no-ordered-dump --sanitize=0 --no-cache
 *   To copy the production database to your local site:
 *   $ drush sql-sync @yoursite.prod @yoursite.local
 *   To copy all files in development site to your local site:
 *   $ drush rsync @yoursite.dev:%files @yoursite.local:%files
 *   Clear the cache in production:
 *   $ drush @yoursite.prod clear-cache all
 *
 * You can copy the site alias configuration of an existing site into a file
 * with the following commands:
 *   $ cd /path/to/settings.php/of/the/site/
 *   $ drush site-alias @self --full --with-optional >> ~/.drush/mysite.aliases.drushrc.php
 * Then edit that file to wrap the code in <?php 

tags.
*/

/**
* Local alias
* Set the root and site_path values to point to your local site
*/
$aliases['local'] = array(
'root' => '/path/to/drupal/root',
'uri' => 'yoursite.localhost',
'path-aliases' => array(

Subscribe with RSS Subscribe to RSS - sql-sync