diff --git a/tools/monorepo/src/Worker/SplitCommitsWorker.php b/tools/monorepo/src/Worker/SplitCommitsWorker.php index 3dfb9d3..1d0462c 100644 --- a/tools/monorepo/src/Worker/SplitCommitsWorker.php +++ b/tools/monorepo/src/Worker/SplitCommitsWorker.php @@ -12,6 +12,7 @@ namespace Biurad\Monorepo\Worker; +use Biurad\Git\Commit; use Biurad\Git\Repository; use Biurad\Monorepo\{Monorepo, WorkerInterface, WorkflowCommand}; use Symfony\Component\Console\Input\{InputInterface, InputOption}; @@ -132,7 +133,7 @@ static function (array $required) use ($input, $output, $currentBranch, $branche ['checkout', '--orphan', "split-$remote"], ['reset', '--hard'], ['pull', $remote, $branch], - ['cherry-pick', ...\explode(' ', "$target~".\implode(" $target~", \array_reverse(\range(0, $count - 1))))], + ['check-pick', ...array_map(fn (Commit $c) => $c->getShortHash(), $mainRepo->getLog($target, null, $count)->getCommits())], ['push', $input->getOption('force') ? '-f' : '-q', $remote, "+refs/heads/split-$remote:$branch"], ['checkout', $currentBranch], ['branch', '-D', "split-$remote"],