diff --git a/orchestra/cmds/update.py b/orchestra/cmds/update.py
index 25a49aad470d5ae85d804660002a1c82b6e8eca9..ea47ddfc4baebf6cf9d84e7782cbbf5d1d104306 100644
--- a/orchestra/cmds/update.py
+++ b/orchestra/cmds/update.py
@@ -10,15 +10,17 @@ from ..model.configuration import Configuration
 
 def install_subcommand(sub_argparser):
     cmd_parser = sub_argparser.add_parser("update", handler=handle_update, help="Update components")
+    cmd_parser.add_argument("--no-config", action="store_true", help="Don't pull orchestra config")
 
 
 def handle_update(args, config: Configuration):
     failed_pulls = []
 
-    logger.info("Updating orchestra configuration")
-    result = git_pull(config.orchestra_dotdir)
-    if result.returncode:
-        failed_pulls.append(f"orchestra configuration ({config.orchestra_dotdir})")
+    if args.no_config:
+        logger.info("Updating orchestra configuration")
+        result = git_pull(config.orchestra_dotdir)
+        if result.returncode:
+            failed_pulls.append(f"orchestra configuration ({config.orchestra_dotdir})")
 
     logger.info("Updating binary archives")
     os.makedirs(config.binary_archives_dir, exist_ok=True)