首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使从封闭源代码项目派生的开源叉?

如何使从封闭源代码项目派生的开源叉?
EN

Stack Overflow用户
提问于 2019-05-29 16:21:05
回答 1查看 155关注 0票数 0

我正在对一个封闭源代码项目的一部分(但不是全部)进行分叉,以使其成为一个开源项目。到目前为止,我已经创建了一个分支(“开放”),从其中删除了我们不打算开放源代码的特性。

现在,我可以导出“开放”分支,并将其签入到一个新鲜的、空的回购程序中,这将成为开源版本。

但是,我希望保持同步开放和封闭源代码版本之间更改的能力:也就是说,如果我们稍后修复了封闭源代码中的一个bug,那么也可以将补丁同步到开源版本(如果贡献者同意的话,反之亦然)。

我是否可以做到这一点,而无须公开“开放”分行(即封闭分行)的历史?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-29 16:36:24

当git存储作为变更集提交时,您可以轻松地选择一个回购到另一个回购的更改(当然,如果存在相同的已更改的文件,并且它们没有太大的不同)。

实现这一目标的一种方法是将两个“原始”作为远程添加到单个回购克隆中。然后从两个遥控器中获取所有提交(因此可以使用提交哈希)。然后,您可以查看一个遥控器的分支和樱桃-选择另一个遥控器的提交,就像任何其他单一远程回购樱桃挑选。

在一个被解释得很糟糕的例子中,这样的事情:

代码语言:javascript
复制
git clone git://blablabla.git mydoublerepo
cd mydoublerepo
git remote add other git://other.git
git fetch other
git checkout -b other_master -t other/master
git cherry-pick origin/master # cherry-picks the top commit off of the other remote's master branch

注意,您不需要为此创建单独的克隆,您可以将任何repo作为远程添加到任何其他克隆的回购中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56364834

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档