假设您有两个 git 存储库,
oldPackage
和 newPackage
。
oldPackage
有很多历史,而新包是空。
oldPackage
为一个地理市场提供一项服务,而 newPackage
将为不同的地理市场提供类似的服务。
oldPackage
应作为 newPackage
的模板/基线开始。现在禁止手动将
oldPackage
的内容复制并粘贴到 newPackage
中。然而,我担心 git clone
可能会引入意大利面条问题,将其中一个从另一个中解救出来是一个持续存在的问题。
如何复制一个包的内容而不排除任何 git 历史记录?
是不是像
cp -r oldPackage newPackage --exclude .gitignore
那么简单?
你有几个选择:
克隆存储库,删除 .git 并重新初始化
git clone ... xxx
cd xxx
rm -rf .git
git init
将多个遥控器添加到您的“新”存储库并使用
git cherry-pick
获取所需的提交/分支
完整答案在这里: git - 将另一个分支上的提交应用到工作副本