这有点不寻常的情况。我试着解释背景
一家大型商业公司(我不能说哪家公司)拥有多年未维护的框架的知识产权。该框架仍有许多想要取得进展的沮丧用户。
我已成功与公司开始对话并建议他们将其作为开源发布。他们拒绝并说由于业务需求不可能。 但他们可以将来源Github发送给付费客户作为他们的服务。这意味着客户也可以提交对存储库的更改。
但问题是IP。该公司希望为原始代码和未来的所有变更保留完整的IP。我不认为许多开发人员会根据这些条件进行更改。对于商业公司来说,它会感觉像是免费工作。在开源项目中免费工作是完全不同的事情。
是否可以使用Git或任何其他软件将原始资源保存在一个位置并在另一个位置进行更改?如果技术上可行,那么让它们保留原始源的IP并让它们释放IP以进行更改会更容易。
修改1
因此对change-repository的要求是只能访问它的用户无法重建完整的源代码。您还必须有权访问orginal-repository。
答案 0 :(得分:1)
您可以尝试使用Gerrit,请查看: Andorid Code Review
允许每个人挑选特定的更改并将其作为补丁应用。更改存储在非标准的Git引用目录(引用/更改)中,使用Gerrit的访问权限模块,您可以轻松控制对它的访问。
因此,简而言之,使用Gerrit,您可以定义3个用户组:
答案 1 :(得分:0)
Is it possible with Git or any other software to keep original source in one place and changes on another?
也许我误解了这个问题,但这似乎可以很容易地使用两个单独的git repos完成 - 一个用于原始源,一个用于随着代码库向前推进的任何更改。
您可以将这些远程存储库保存在不同的位置,可能存在不同的访问限制,因此它们不会相互干扰。