protected function makeCreator(InputInterface $input) { $path = $input->getArgument('path'); if ($input->getOption('git')) { return new GitRepoCreator($input->getOption('git'), $path); } elseif ($input->getOption('submodule')) { return new GitSubmoduleCreator($input->getOption('submodule'), $path); } else { $creator = new SkeletonCreator($path); $this->installParts($creator); return $creator; } }