复制文件但不复制 git 历史记录?

问题描述 投票:0回答:1

假设您有两个 git 存储库,

oldPackage
newPackage

oldPackage
有很多历史,而新包是

oldPackage
为一个地理市场提供一项服务,而
newPackage
将为不同的地理市场提供类似的服务。

oldPackage
应作为
newPackage
的模板/基线开始。
但最终,两者都必须保持自己独立的历史。

现在禁止手动将

oldPackage
的内容复制并粘贴到
newPackage
中。然而,我担心
git clone
可能会引入意大利面条问题,将其中一个从另一个中解救出来是一个持续存在的问题。

如何复制一个包的内容而不排除任何 git 历史记录?

是不是像

cp -r oldPackage newPackage --exclude .gitignore
那么简单?

git
1个回答
0
投票

你有几个选择:

  1. 克隆存储库,删除 .git 并重新初始化

    git clone ... xxx
    cd xxx
    rm -rf .git
    git init
    
    • 您有一个带有最新文件系统的干净存储库
  2. 将多个遥控器添加到您的“新”存储库并使用

    git cherry-pick
    获取所需的提交/分支

    完整答案在这里: git - 将另一个分支上的提交应用到工作副本

© www.soinside.com 2019 - 2024. All rights reserved.