diff -ur drush_old/commands/core/variable.drush.inc drush/commands/core/variable.drush.inc
--- drush_old/commands/core/variable.drush.inc	2009-12-23 20:50:51.000000000 -0500
+++ drush/commands/core/variable.drush.inc	2009-12-23 22:07:41.000000000 -0500
@@ -58,6 +58,7 @@
     ),
     'options' => array(
       '--yes' => 'Skip confirmation if only one variable name matches.',
+      '--force' => 'Force a new variable to be set if it doesn\'t exist.',
     ),
     'examples' => array(
       'drush vset --yes preprocess_css 1' => 'Set the preprocess_css variable to true. Skip confirmation.',
@@ -140,6 +141,11 @@
     drush_log(dt('!name was set to !value.', array('!name' => $args[0], '!value' => $value)), 'success');
     return '';
   }
+  elseif (drush_get_context('DRUSH_FORCE_NEW')) {
+    variable_set($args[0], $value);
+    drush_log(dt('!name was set to !value.', array('!name' => $args[0], '!value' => $value)), 'success');
+    return '';
+  }
   else {
     foreach ($options as $key => $option) {
       print "[$key] : $option \n";
diff -ur drush_old/includes/drush.inc drush/includes/drush.inc
--- drush_old/includes/drush.inc	2009-12-23 20:50:52.000000000 -0500
+++ drush/includes/drush.inc	2009-12-23 22:11:36.000000000 -0500
@@ -312,6 +312,7 @@
   $options['-d, --debug']              = dt('Display even more information, including internal messages.');
   $options['-q, --quiet']              = dt('Hide all output');
   $options['-y, --yes']                = dt("Assume 'yes' as answer to all prompts");
+  $options['-f, --force']              = dt("Force a new databse variable to be created (for use with vset command).");
   $options['-s, --simulate']           = dt("Simulate all relevant actions (don't actually change the system)");
   $options['-i, --include']            = dt("A list of paths to search for drush commands");
   $options['-c, --config']             = dt("Specify a config file to use. See example.drushrc.php");
diff -ur drush_old/includes/environment.inc drush/includes/environment.inc
--- drush_old/includes/environment.inc	2009-12-23 20:50:52.000000000 -0500
+++ drush/includes/environment.inc	2009-12-23 20:53:08.000000000 -0500
@@ -427,6 +427,7 @@
 
   // Backend implies affirmative
   drush_set_context('DRUSH_AFFIRMATIVE', drush_get_option(array('y', 'yes', 'b', 'backend'), FALSE));
+  drush_set_context('DRUSH_FORCE_NEW', drush_get_option(array('f', 'force'), FALSE));
   drush_set_context('DRUSH_SIMULATE',    drush_get_option(array('s', 'simulate'), FALSE));
 
   // Suppress colored logging if --nocolor option is explicitly given or if
@@ -894,4 +895,4 @@
   else {
     return drush_set_error('DRUSH_CORE', dt('Drush was unable to load theme information.'));
   }
-}
\ No newline at end of file
+}
