是否有一种既定方式与客户共享项目的部分代码(位于分支机构或其自己的存储库中)?
我正在努力解决的问题:
我们的客户可以访问源代码的方式有不同的模型:
鉴于我们使用git和内部gitorious进行内部开发,我可以很容易地处理前两个案例:
我真正想知道的是第三种情况。
在内部,每个人都能看到所有内容,我们会共享所有代码。
但是,我们不希望客户看到所有内容,而只希望看到他们的软件版本。
是否有一种已知的工作方式,例如使用两个存储库(即“我们的回购”和“客户回购”),带有钩子,当他们从我们这边或者他们涓涓细流时推进和推出变化客户方?
答案 0 :(得分:1)
您可以拥有一个--bare存储库,其中包含例如主分支,步骤3中的开发人员反对。在本地,您可以拥有另一个裸存储库,只有您可以使用。在其中,您可以拥有任意数量的分支机构与您的客户进行协作和隐藏。
只要有一些外部开发人员将某些内容推送到第一个回购站,您就可以将这些更改推送到本地--bare repo,只要您想在外部共享代码,就可以推送到例如共同回购的主人。
编辑:使用你我的意思是你作为你的组织和本地我的意思是你的本地网络,或者你的组织的本地网络。
答案 1 :(得分:0)
我认为你可以设置两个镜像存储库。其中每个都将作为两个遥控器添加到您的开发人员沙箱中。一个用于customer
,另一个用于internal
。
你必须有一些策略只将一些分支推送到customer
远程,然后让它们克隆并仅对其进行操作。