在Git中的单个项目上有多个流? [英] Multiple streams over single project in Git?

查看:86
本文介绍了在Git中的单个项目上有多个流?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我浏览了有关 Git最佳实践模型的博客. 当我们要让Git成为我们组织中即将进行的项目的SCM的主要负责人时,我对他们在Internet上找不到太多东西感到怀疑.

I went through blog regarding Git best practices model. As we are going to make Git as our major head for SCM for the upcoming projects in our organization, I have some doubts, regarding them not able to find much over internet.

我们的项目体系结构是:我们只有一个主项目,在这个项目中,我们有8-10个子项目,分别是SP1,SP2 ... SP8.所有这些项目均由其各自的小组成员拥有,并且与任何其他子项目无关.
我们还希望为我们的主项目拥有一个主分支,一个测试分支和一个发行分支.

Our project architecture is: We have only one Main-Project and in this project we have 8-10 sub-projects say SP1, SP2 ... SP8. All these projects are owned by their individual group members and they have nothing to do with any other Sub-Project.
We also want to have one Master Branch one Testing branch and one Release Branch for our Main-Project.

首先:如果我们遵循这种情况,那么在克隆时,每个人都应通过Git获得所有MainProject,但组成员不需要任何其他子项目.我们如何通过Git实现这一目标? Git中是否有像概念这样的流?

First: If we follow this scenario then while cloning everyone should get all MainProject by Git but group members don't want any other subprojects. How do we achieve this by Git? Is there any stream like concept in Git?

第二:我们如何为子项目设置用户身份验证权限,以便其他任何SubProject成员都不能将,拉入或克隆到其他子项目.

Second: How can we set user authentication permission for Sub-Projects, So that no other SubProject member can pull, push or clone to other Sub-Projects.

在Git中这些事情可能吗?

Are these things possible in Git?

推荐答案

类似流的概念"?我在ClearCase或RTC(理性团队音乐会)中看到了这些.

"stream-like concept"? I saw those in ClearCase or RTC (Rational Team Concert).

不,没有流,您可以在其中定义要使用的组件"列表.

No there is no stream, where you could define the list of "components" you want to work with.

但是有分支:在每个分支中,您可以添加或删除需要查看或忽略的子模块.请参阅"如何删除Git子模块?"

But there are branches: in each branches you can add or remove the submodules you need to see or to ignore. See "How do I remove a Git submodule?"

因此,您可以实现与流中类似的配置,其中分支仅包含所需的子模块.

So you could achieve a similar configuration as in streams, with branches including only the submodules you need.

关于ACL(访问控制列表),最完整的解决方案是 gitolite ,由您的Git服务器(正在执行身份验证的Apache或ssh)调用的perl脚本,以及

Regarding the ACL (Access Control List), the most complete solution is gitolite, a perl script called by your Git server (apache or ssh, which are doing the authentication), and which will do the authorisation.

这篇关于在Git中的单个项目上有多个流?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆