Last updated January 28, 2012. Created by Itangalo on September 20, 2009.
Edited by donquixote, bwinett, HongPong. Log in to edit this page.
Once you've got a feature installed and running, chances are that you'll want to fiddle and change in some of its settings. This is quite natural, and nothing to be afraid of. The Features module will notice any changes made to a component of any features and signal this with an Overridden state on the Features administration page.
Moreover, the Features module will allow an administrator to inspect the changes, revert to the original state and also to update the feature by applying the new changes to it (thereby possibly branching the feature). Here's how it works:
- The View option displays a crude list of all the settings in the feature. If you have the Diff module installed, you can also use the Compare option to see what has been changed in a more convenient way.
- The Revert option presents a list of the changed components in the feature, allowing the administrator to uncheck any of them before reverting the rest to its original state.
- The Update option is identical to the Create feature page (read more), with the exception that fields and component list is pre-populated.
"Revert" vs "Update"
Use one of these operations if the configuration on your site (living in the database) differs from the definitions in your feature module (living in code).
Revert
This operation changes your site configuration (living in the database) to match up with the definitions in the feature module code.
In some cases (e.g. views), the revert operation will delete the respective configuration in the database, so the system will instead use the default configuration that is defined in the feature module's code.
Update / Recreate
The update operation will produce a modified version of your feature module, which matches up with the configuration found in the database.
What happens with this modified code, depends on whether you do this with drush or with the web-based interface.
If you update the feature via drush ("drush features-update [name]"), the modified code will replace your existing feature module in the filesystem.
The "recreate" button in the web-based administration interface is the equivalent to "update". However, the modified code will be provided for download as a zip, instead of overwriting the existing feature module. It is up to the site builder to manually unzip and re-upload the modified module, replacing the original.
Comments
If you do any of these
If you do any of these operations, it would be interesting where the "modified" feature module goes. Is it downloaded? Or does it overwrite the existing modules in its location in the filesystem?
I changed the documentation
I changed the documentation text, to make the fundamental things more explicit. For me it was not obvious until I tried it myself.
The phrasing and structure of the text, however, needs some improvement. Feel free to change it.
recreate
what does 'recreate' do? Seems to do something similar to 'update', rewrite code from db.
the man may be gone, but the heroic struggle to mock him continues
I changed the documentation
I changed the documentation text.
Recreate is the web-based equivalent to update, just that it provides the modified code for download, instead of replacing the original.