使用Git管理多个相关但不同的项目中的SCM和依赖项

时间:2010-07-14 17:14:06

标签: git

我刚开始使用Git而且我很喜欢它,但我遇到了解决处理多个项目配置控制的最佳方法的问题。所以,假设我有以下项目:

  • 通用
  • PROJECT1
  • Project1b
  • Project2的

Project [x]在Common中有依赖关系,而Project1b在Common和Project1中都有依赖关系。现在他们都是独立的git存储库(我想保留)但是当我从不同的分支跳转时(例如在Project1中)我会遇到问题,我将在那里确保Common中的正确分支是正在使用。我想知道是否有一种内置于git中的直观方法来管理整个系统配置(Project1中的分支X应该与Common的分支Y一起使用)。

我在Windows上使用git扩展运行,所以(遗憾的是)我的脚本功能有限。

欢迎任何建议!感谢。

1 个答案:

答案 0 :(得分:1)

git submodules 应该是在此处管理此类配置的正确方法。

您可以阅读有关使用子模块in this SO answer的方法的更多信息。

您可以定义一个引用的父回购:

  • Project1,来自某个分支的修订
  • 与另一个分支的修订相同

每次您对其中一个存储库(这里是“全局”父Git存储库的“子模块”)进行更改时,您上升一级,并在父级仓库中提交,以便记录确切的配置你的子模块。

这是记录“的方法”(来自Project1的分支X应该与Common中的分支Y一起使用。)