基于我自己的种子项目的多个项目的Git工作流?

基于我自己的种子项目的多个项目的Git工作流?,git,github,workflow,git-remote,boilerplate,Git,Github,Workflow,Git Remote,Boilerplate,我正在创建一个种子项目(为我自己),我将使用它作为多个其他项目的基础。在寻找最佳实践之后,我发现了一些有用的策略。但我不确定该使用哪种策略,我觉得我没有一个完整的解决方案;一个工作流,它解释了满足我需求所需的所有步骤 到目前为止,我发现了两个主要策略 使用多个遥控器: git克隆-o种子ssh://git@github.com/user/seed.git新项目名称 -o seed将原点重命名为seed,它仍然可以用于从中提取更改 创建新的空GitHub new_project_name repo

我正在创建一个种子项目(为我自己),我将使用它作为多个其他项目的基础。在寻找最佳实践之后,我发现了一些有用的策略。但我不确定该使用哪种策略,我觉得我没有一个完整的解决方案;一个工作流,它解释了满足我需求所需的所有步骤

到目前为止,我发现了两个主要策略

  • 使用多个遥控器:
  • git克隆-o种子ssh://git@github.com/user/seed.git新项目名称

    -o seed将原点重命名为
    seed
    ,它仍然可以用于从中提取更改

    创建新的空GitHub new_project_name repo。 然后
    git远程添加源ssh://git@github.com/user/new\u project\u name.git

    ()

  • 使用多个分支:
  • git克隆https://github.com/username/seed.git
    /n

    git分行myproject

    git checkout myproject

    您的所有更改都将独立于种子项目。如果您想了解最新情况并了解种子项目的位置,则只需执行以下操作:

    git签出主机

    git pull

    现在,您所有的文件都将消失,您将看到“种子”中的最新内容。如果您希望您的项目得到他们的更改,您可以这样做:

    git checkout myproject

    git合并主机

    ()

    如果我使用“多远程”策略,我假设我将无法推动对源于种子项目的代码所做的任何更改,因为种子项目将获得与我推动的项目相关的所有代码(?)

    如果我使用“多分支”策略,我假设我必须将所有项目作为不同的分支推送到种子回购(?)。如果我想更改任何源于种子项目的代码,我可以始终签出并更改主代码,然后将更改合并到分支

    我觉得我应该在这两种策略之间进行某种混合(或者完全不同的东西)。因为我马上遇到了一个问题,我想在每个项目(基于种子项目)中更改readme.md、package.json、gulpfile等。如果我随后
    git pull
    对seed项目所做的任何改进,我假设对这些文件的更改将被覆盖,或者至少存在必须处理不断合并问题的巨大风险。我应该使用什么策略来尽可能简单地处理这些潜在的混乱问题

    (我也在研究forking,但它似乎并不相关,除非所有存储库都是同一软件的替代版本(?),并且您希望有一个人负责合并到主版本(?)