自动保持共享git子树的同步

自动保持共享git子树的同步,git,tfs,sync,githooks,subtree,Git,Tfs,Sync,Githooks,Subtree,在我们的服务器上,我们为不同的项目提供了不同的git Repo,这些项目以子树的形式共享一些组件。对我来说,它们仍然是亚树是非常重要的,因为我们在整个源代码库中进行积极的开发,并且人们拥有最简单方便的工作流是非常重要的。这也意味着,理想情况下,通过gui工具进行简单的git拉取是一种工作方式。子树非常、非常方便,因为它们隐藏了潜在的复杂性,允许每个人只克隆repo,查看他们需要的所有内容,并最终推送到团队git服务器 (然后git服务器应该推送到git repos组件,该组件最终将在TFS中结束

在我们的服务器上,我们为不同的项目提供了不同的git Repo,这些项目以子树的形式共享一些组件。对我来说,它们仍然是亚树是非常重要的,因为我们在整个源代码库中进行积极的开发,并且人们拥有最简单方便的工作流是非常重要的。这也意味着,理想情况下,通过gui工具进行简单的
git拉取
是一种工作方式。子树非常、非常方便,因为它们隐藏了潜在的复杂性,允许每个人只克隆repo,查看他们需要的所有内容,并最终推送到团队git服务器

(然后git服务器应该推送到git repos组件,该组件最终将在TFS中结束)

现在我的问题是,我如何能自动保持所有组件的最新状态?我的想法是在项目回购协议上实现一个钩子,在接受任何推送之前(可能会抱怨客户已经过时)进行
git子树推送
,第二个钩子在推送到达后立即进行
git子树推送


你有更好的主意吗?每个输入都是受欢迎的。

我也有这个问题,git子树拉和推是一个很大的麻烦,主要是因为你必须为每个子树做这件事,并键入它们的名称和远程,是不是不可能为子树设置一个上游并同时拉/推?在来回一些之后,我们同意改变我们的tfs结构,以使整个本地映射(从而使git tfs桥)更加容易。因此,现在我可以使用1对1 git tfs桥,从而避免了这个问题。