首页 > 解决方案 > 与浅层 git 克隆的协作

问题描述

如何创建单个分支的浅克隆,可以将其推送到新的遥控器,然后重新集成到原始遥控器中?

我需要将代码发送给客户。该客户想要进行更改,我需要稍后将其集成到我的代码库中。但是,我不能给客户一个完整的克隆。

我可以创建一个正是我希望客户拥有的克隆。

git clone --branch customer-release --depth 1 url

我可以删除我的遥控器,在新分支上提交(就像客户一样),再次添加我的遥控器,然后将客户分支推送到我的遥控器上。

但是,我无法将浅层克隆推送到新创建的遥控器上(正如客户想要做的那样)。
我尝试了孤立分支和变基,但最终没有成功。

标签: gitgit-rebasegit-clonegit-remotegit-fork

解决方案


为避免任何错误,我将仅使用您想要的代码创建一个单独的存储库。
它不会有任何历史记录,但这样的回购将很容易推动和协作。

一旦您想将来自该单独存储库的新提交重新集成到您自己的原始存储库中,您可以使用format-patch/apply导出/重新导入相关提交。

这似乎比试图将一个分支与一个完整的 repo 隔离开来更安全。


推荐阅读