From 0fa04cd21893fba164672fbcb1ac2c4bc7bd3b5c Mon Sep 17 00:00:00 2001 From: charlesnutter Date: Tue, 7 Jul 2026 18:01:21 -0700 Subject: [PATCH] dq-init: confirm before overwriting config.dq.yml in interactive mode --- bin/dq-init | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/bin/dq-init b/bin/dq-init index b909356..00faf20 100644 --- a/bin/dq-init +++ b/bin/dq-init @@ -113,6 +113,20 @@ if (!$interactive) { echo "\n drupalquick — interactive setup\n"; echo str_repeat('─', 40) . "\n\n"; +// The generated file is the developer's to own and edit — never clobber an +// existing one without asking (the non-interactive path refuses outright). +if (file_exists($destination)) { + $overwrite = strtolower(ask('config.dq.yml already exists. Overwrite it? (y/N)', 'n')); + if ($overwrite !== 'y' && $overwrite !== 'yes') { + echo "ℹ️ Keeping the existing config.dq.yml. Edit it, then run:\n"; + echo " composer exec dq-install\n"; + if ($ddev) { + ddev_copy($packageRoot, $projectRoot); + } + exit(0); + } +} + // Site echo "--- Site ---\n"; $siteName = ask('Site name', 'My Drupal Site');