svn - fork 开源项目的最佳实践是什么?

标签 svn version-control open-source branch

关闭。这个问题是opinion-based .它目前不接受答案。












想改进这个问题?更新问题,以便 editing this post 可以用事实和引用来回答它.

6年前关闭。




Improve this question




我需要定制一个开源项目。这些更改是针对特定组织的,对公共(public)项目没有用处。代码更改包括禁用组织不需要的功能(影响 5% 的代码)、为组织定制其他功能(影响 20% 的代码)以及添加新的自定义功能(添加大约 10% 的新代码)。

我可以从当前版本开始并从那里进行自定义。但是,原始项目继续取得进步并引入了新功能,我希望能够在这些改进出现时将其纳入。

管理此问题的最佳方法是什么?现在,我只能在发布版本可用时获得它们,但我应该很快就可以只读访问原始项目的 Subversion 存储库。我是使用 Subversion 存储库的新手,但也可以将它们用于我的代码。

最佳答案

最佳实践是首先尝试将您的更改合并到项目中。

如果这不是一个选择,你只是

  • 导入他们当前的 HEAD,
  • 在分支中进行修改
  • 从他们的
  • 更新你的树
  • 合并和重新分支

  • 第 3 步和第 4 步与您的前叉保持最新有关。这是很多工作,取决于项目的事件和保持最新状态的重要性。如果非常重要,我会每周至少更新和合并一次。

    您可能更喜欢将他们的 svn 树导入 git 以简化合并,这是您最常做的事情

    关于svn - fork 开源项目的最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/134090/

    相关文章:

    svn - 如何使用 Subversion 获得 master-master 复制?

    svn - 搁置在 TortoiseSVN 中?

    linux - 'git svn' 不再启动 git-svn

    c# - 如何使用 SharpSvn 获取存储库的所有分支?

    svn - Mercurial 标记/分支策略

    c - 使用c语言在linux下使用oss制作一个可以播放音频文件的程序

    open-source - 是否有使用敏捷/Scrum 方法的开源项目的成功案例?

    git - 开始使用版本控制系统

    svn - 帮助理解 SVN Externals

    windows - 什么是适用于 Windows 的优秀开源调试器和内存分析器?