如何创建单个分支的浅层克隆,可以将其推送到新的远程,然后重新集成到原始远程?
我需要向客户发送代码。该客户希望进行我需要在以后集成到我的代码库中的更改。但是,我不能给客户一个完整的克隆。
我可以创建一个克隆,这正是我希望客户拥有的。
git clone --branch customer-release --depth 1 url
我可以删除我的遥控器,在新分支上进行提交(如客户所做),再次添加我的遥控器,然后推送客户分支以集成到我的遥控器上。
但是,我无法将浅层克隆推送到新创建的远程(就像客户想要做的那样)。 我尝试了孤儿分支和变基,但最终都没有成功。
为了避免任何错误,我会用你想要的代码创建一个单独的repo。 它不会有任何历史,但这样的回购将很容易推动和合作。
一旦您想要将来自该独立仓库的新提交重新集成到您自己的原始仓库,您就可以使用format-patch/apply导出/重新导入相关提交。
这似乎比试图将分支与完整仓库隔离更安全。