git中的多个项目(子树)

时间:2016-01-26 16:37:10

标签: git ansible git-subtree

我有一个git存储库,我用它来进行ansible配置。目录结构是这样的:

ansible
|---Site
`---Roles
      |---Common
      `---other_project

这是git,它是私有的,因为只有我的团队需要访问它。

我想将other_project设为一个单独的存储库,以便可以公开上传。我认为我需要的是子树,我有这个工作。我的问题在于工作流程。通常我遵循像this这样的工作流程模式。

这个要点是我有一个开发分支和一个主分支。一旦一组代码稳定后,它就会被--no-ff推送到master中,这样在master中你只能看到稳定版本,而且两者之间没有任何内容。

如何使用other_project执行此操作。有没有办法为子树使用分支?然后我如何将一个分支合并到另一个分支并在它们之间交换?

2 个答案:

答案 0 :(得分:0)

您是否看过Git Submodules

问候。

答案 1 :(得分:0)

如果我的结构正确,other_project只是一个角色。然后你可以使用Ansible Galaxy进行安装。

为此,您只需在Ansible根文件夹中使用requirements.yml,其中包含以下内容:

- src: https://github.com/your/role
  version: master
  name: other_project

然后使用ansible-galaxy install -r requirements.yml

进行安装

有关详细信息,请参阅here