To get started just install and enable the features module.
The following screenshots are from a D6 install but are still valid for a D7 install.
At admin/build/features | D7: admin/structure/features you can manage installed features or create new ones.
Creating a new feature leads you through a few selections where you can add different aspects of your website related to one feature. In the end a download file is presented which you can save. The tar.gz file contains 'just' a module which can be installed onto your current working site or onto other sites. N.B. Do not make your features' titles too long. The machine name is limited to 100 characters due to the limitations of tar files. (http://drupal.org/node/1062422) If your name is too long, filenames will be truncated and the feature will not work.
When you install a feature on a site and you reconfigure some parts of the site related to one or more features the state of these features will change. You have then to decide what to do. If these changes are intentional then you should (re)export the feature and save the tarball. Otherwise, you should revert to the original state.
The following paragraph does not apply for D7 as the modules are visible
When navigating to admin/build/modules the installed feature modules are not listed but their names appear in the module dependencies. This is weird at first but logical in the end. Features are managed on admin/build/features and disabling just the module has bad side effects.
- A feature - a module generated by Features, which stores configuration of other modules, e.g. a content type or a View, in code.
- Default - if a feature is described as 'default', it means that the code that is running is that stored in your feature. The code is not stored in the database.
- Overridden - a feature is overridden when a user uses the UI to make configuration changes. These changes are stored in the database, and override what is stored in code.
- Disabled - a feature is a module, and therefore must be enabled before it can be used. Otherwise, it is disabled.
- Revert- if a feature has been overridden, it can be reverted. This means that the version in the database is destroyed and the version defined in code, in your feature, is used.
- Update - updating an overridden feature will ensure that the version of the feature defined in code is made to match the version stored in the database.