Git cherry-pick 从一个文件夹到另一个文件夹的提交(都是同一个 repo)

Git cherry-pick of a commit from one folder to another (Both of the same repo)

我厌倦了在分支机构之间结账。所以,我在我的电脑上克隆了两次 repo。

现在,我必须访问同一存储库的不同文件夹。

我想将旧克隆上的特定本地提交复制到新克隆。哪一组 git 命令可以帮助我做到这一点? (可能是樱桃挑选?)

从长远来看,您想要的是使用 git 工作树。

为了修复您当前的情况,您可以 cherry-pick 通过从本地目录创建遥控器来在回购之间。

通过将另一个本地存储库添加为远程存储库并执行 git fetch,您可以 cherry-pick 仅使用 SHA 从该存储库中进行任何提交。

例如,如果您想要 cherry-pick 来自 old_clone 且 SHA 以 e9bee1bc 开头的提交:

cd /projects/new_clone
git remote add old_clone /projects/old_clone
git fetch old_clone
git cherry-pick e9bee1bc

您也可以使用类似的策略将多个克隆的遥控器转换为工作树。例如,如果您想从原始项目创建工作树并将 branch1 的本地副本从 new_clone 添加到新工作树:

cd /projects/original
git worktree add /projects/worktree_1
cd /projects/worktree_1
git remote add new_clone /projects/new_clone
git fetch new_clone
git switch -c branch1 new_clone/branch1