As we have been developing ExpressionEngine websites since long. While ExpressionEngine development, we take care of multi-environment setting, git versioning, security, optimization etc. Here I would like to talk about simple and quick way for multi-environments in ExpressionEngine - local enviroment for development, staging for client presentation & testing and production or live environment. 
ExpressionEngine stores all the settings into database. Although, we can overrite all the settings from main configuration file - system/user/config/config.php. So for the multi environment, we need to insert following code at the botton of system/user/config/config.php

switch($_SERVER['HTTP_HOST']) {
	case 'ee-site.local':
		$config['database'] = array(
			'expressionengine' => array(
				'hostname' => '127.0.0.1',
				'database' => 'ee-site', // DB NAME
				'username' => 'root', // DB USERNAME
				'password' => 'root', // DB PASSWORD
			),
		);
		$config['base_url'] = 'http://ee-site.local/';
		$config['base_path'] = '/path/to/webroot/of/local-environment/';

	case 'staging.ee-site.com':
		$config['database'] = array(
			'expressionengine' => array(
				'hostname' => 'staging-db-host',
				'database' => 'staging.ee-site', // DB NAME
				'username' => 'root', // DB USERNAME
				'password' => 'root', // DB PASSWORD
			),
		);
		$config['base_url'] = 'http://staging.ee-site.com/';
		$config['base_path'] = '/path/to/webroot/of/staging-environment/';

	case 'prod-website-url.com':
		$config['database'] = array(
			'expressionengine' => array(
				'hostname' => 'production-db-host',
				'database' => 'prod-website-db', // DB NAME
				'username' => 'root', // DB USERNAME
				'password' => 'root', // DB PASSWORD
			),
		);
		$config['base_url'] = 'http://prod-website-url.com/';
		$config['base_path'] = '/path/to/webroot/of/production-environment/';		
}

That's all. Now we would need to update following settings from Control Panel. This is one time process. Then there will not be any need to make changes over these settings from Control Panel.

From Control Panel -> Settings -> URL and Path Settings
Website root directory: {base_url}
Control panel directory: {base_url}admin.php
Themes directory: {base_url}themes/
Themes path: {base_path}themes/

Control Panel -> Settings -> Content & Design -> Emoticons
URL: {base_url}images/smileys/

Control Panel -> Settings -> Members -> Messages -> URL and Path Settings
Upload directory: {base_url}images/pm_attachments/
Upload path: {base_path}images/pm_attachments/

Control Panel -> Settings -> Members -> Avatar -> URL and Path Settings
Avatar directory: {base_url}images/avatars/
Avatar path: {base_path}images/avatars/

Control Panel -> Settings -> Security & Privacy -> CAPTCHA -> URL and Path Settings
CAPTCHA directory: {base_url}images/captchas/
CAPTCHA path: {base_path}images/captchas/

Control Panel -> Files -> Upload Directories
For each upload directory, change "Upload directory" like {base_url}diectory/path/ and "Upload path" like {base_path}diectory/path/