当前位置:  开发笔记 > 开发工具 > 正文

如何使用Git实现以下功能?

如何解决《如何使用Git实现以下功能?》经验,为你挑选了1个好方法。

问题陈述

到目前为止,每个人都可以访问整个代码库.现在我需要强制人们只获取他们将要处理的模块的代码,对于其他模块,他们将获得lib中的库.假设我们现在有两个模块

thinkbot(HEAD)

- > assemblebot(tree/subdir)

 -> include

 -> source

 -> lib

 -> obj

- > vpl(tree/subdir)

 -> include

 -> source

 -> lib

 -> obj

- >包括

- > source - > bin`

现在,如果某人正在使用vpl模块,他将获得包含代码的include和source文件夹,并且他将从assemblebot模块获得一个lib.因此,当他从HEAD进行更改和编译时,事情会从他身上发挥作用.

伙计们如何在Git中实现这一点?关于阅读什么的指针?命令片段会很棒吗?



1> sebnow..:

目前,我能想到的唯一方法是使用子模块.两个模块(assemblebot,vpl)每个都是一个子模块,树的其余部分都在超级项目中.

这实际上意味着这两个模块必须位于不同的存储库中,然后才能存储在主存储库中git submodule init git://foo.com/assemblebot.git.

我不确定这是否值得整体努力.这不是git的优点之一(实际上它是我认为唯一需要改进的东西).

对部分检查的更好支持正在进行中(狭窄和稀疏的克隆).

编辑:考虑到vpl和assemblebot依赖于include和source,或许最好将include和source作为vpl和assemblebot存储库的子模块.但是,这些不是单独的项目,git所做的是跟踪项目内容.我没有看到为什么这些模块实际上应该分开的原因.也许只是告诉开发人员不要触摸对方的代码?

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有