如何在单独的Git存储库中维护基本代码?

时间:2017-01-11 13:22:34

标签: c# git visual-studio-2015 azure-devops

首先,我是VSTS和Git的新手,如果我的术语变得混乱,请道歉!

问题

我的情况是我有一个VS / C#项目(称为“PluginBase”),它本质上是一个插件的“开始模板”代码。从历史上看,每次我想为特定客户创建一个新的“定制/派生”构建时,我都会复制该PluginBase项目代码。

我希望能够做到的是,当解决错误修复并将功能添加到PluginBase项目时,我希望选择将这些更改迁移到一个或多个“定制/派生” “建立。同样,如果在开发“定制/派生”构建时首次发现该bug,我想将其迁移回PluginBase插件。

IDEAS

从我的研究中,我发现了一些实现目标的“可能”方法,但我不确定这些方法中哪些(如果有的话)是合适的。

  • 分行
    • 似乎是常见的方法,也许是“最好的”,但是......
    • 表示所有代码必须位于同一个存储库中? (否则不能“挑选”) - 我宁愿避免,因为这可能并非总是可能
  • Git子模块
    • 当项目共享一个共同的“库”(不是来自相同的代码库)时,似乎更有意。
    • 也不确定Visual Studio是否完全支持此功能
  • Cherry Pick
    • 似乎不可能从一个存储库到另一个存储库执行此操作吗?
  • Git Patch
    • 似乎Visual Studio不支持此功能吗?

所以,如果有人对我可以(或应该)使用的方法有任何建议,指导或新建议,我真的很感激你的意见。

非常感谢! :)

1 个答案:

答案 0 :(得分:0)

Git Branches绝对是您要走的路。代码确实必须在同一个存储库中,git存储更改集,并且为了应用更改集,git必须知道自代码路径拆分以来发生了什么,或者它无法替换正确的代码行。

每次向客户推出版本时都要创建一个分支,然后您可以在不同的分支机构中进行挑选。