diff --git a/orchestra/cmds/clone.py b/orchestra/cmds/clone.py
index e183d954fe40096d80c87b3b4a126ac76a426c01..8bd097a809e1fe736cad6376586db6b0cb38d911 100644
--- a/orchestra/cmds/clone.py
+++ b/orchestra/cmds/clone.py
@@ -7,7 +7,7 @@ from ..model.configuration import Configuration
 def install_subcommand(sub_argparser):
     cmd_parser = sub_argparser.add_parser("clone", handler=handle_clone, help="Clone a component")
     cmd_parser.add_argument("component")
-    cmd_parser.add_argument("--force", action="store_true", help="Force execution of the root action")
+    cmd_parser.add_argument("--no-force", action="store_true", help="Don't force execution of the root action")
 
 
 def handle_clone(args, config: Configuration):
@@ -22,4 +22,4 @@ def handle_clone(args, config: Configuration):
         print("This component does not have a git repository configured!")
         return
     executor = Executor(args)
-    executor.run(build.clone, force=args.force)
+    executor.run(build.clone, no_force=args.no_force)
diff --git a/orchestra/cmds/configure.py b/orchestra/cmds/configure.py
index e0704eeef478b03ea07792fe7260c81060846fd9..acdb7d372ce7e31bd240d26f02f2f5e929e2e81a 100644
--- a/orchestra/cmds/configure.py
+++ b/orchestra/cmds/configure.py
@@ -7,7 +7,7 @@ from ..model.configuration import Configuration
 def install_subcommand(sub_argparser):
     cmd_parser = sub_argparser.add_parser("configure", handler=handle_configure, help="Run configure script")
     cmd_parser.add_argument("component")
-    cmd_parser.add_argument("--force", "-f", action="store_true", help="Force execution of the root action")
+    cmd_parser.add_argument("--no-force", action="store_true", help="Don't force execution of the root action")
 
 
 def handle_configure(args, config: Configuration):
@@ -19,4 +19,4 @@ def handle_configure(args, config: Configuration):
         exit(1)
 
     executor = Executor(args)
-    executor.run(build.configure, force=args.force)
+    executor.run(build.configure, no_force=args.no_force)
diff --git a/orchestra/cmds/install.py b/orchestra/cmds/install.py
index 0003bb9988ed5db795141be344a8224b5724cab6..e202602308025270fe021d9fba7a7e860338b4f0 100644
--- a/orchestra/cmds/install.py
+++ b/orchestra/cmds/install.py
@@ -7,7 +7,7 @@ from ..model.configuration import Configuration
 def install_subcommand(sub_argparser):
     cmd_parser = sub_argparser.add_parser("install", handler=handle_install, help="Build and install a component")
     cmd_parser.add_argument("component")
-    cmd_parser.add_argument("--force", "-f", action="store_true", help="Force execution of the root action")
+    cmd_parser.add_argument("--no-force", action="store_true", help="Don't force execution of the root action")
     cmd_parser.add_argument("--no-merge", action="store_true", help="Do not merge files into orchestra root")
     cmd_parser.add_argument("--create-binary-archives", action="store_true", help="Create binary archives")
     cmd_parser.add_argument("--keep-tmproot", action="store_true", help="Do not remove temporary root directories")
@@ -22,4 +22,4 @@ def handle_install(args, config: Configuration):
         exit(1)
 
     executor = Executor(args)
-    executor.run(build.install, force=args.force)
+    executor.run(build.install, no_force=args.no_force)
diff --git a/orchestra/executor.py b/orchestra/executor.py
index afa015f5cd9705b7e5a9a63e7d7bc8a5ae7962e3..b485b5aed49e526ff34656ba04b4c3f9f2a4a6c3 100644
--- a/orchestra/executor.py
+++ b/orchestra/executor.py
@@ -16,8 +16,8 @@ class Executor:
         self._failed_actions: List[Action] = []
         self._pool = futures.ThreadPoolExecutor(max_workers=threads, thread_name_prefix="Builder")
 
-    def run(self, action, force=False):
-        self._collect_actions(action, force=force)
+    def run(self, action, no_force=False):
+        self._collect_actions(action, force=not no_force)
         self._pending_actions.sort(key=lambda a: a.qualified_name)
 
         if not self._pending_actions: