首先,非常感谢您让我加入这个社区! :D
第二,我们直接解决这个问题!
今天,我是一堆项目的唯一负责人,过了一段时间,我们决定将这些项目委托给其他员工,因为很多时候技术人员不需要我进行代码修改可以轻松做到。今天,每个代码修改都委派给我,这样就可以轻松控制项目。
然后,如果我们开始与更多的人一起工作,将很难控制这些项目。然后我想知道(哈哈)为什么不使用Git作为我们的项目控制器?
我开始开发使用LibGit2Sharp(太好了!)来控制项目的应用程序,但是后来我意识到我必须创建大量项目来控制每个项目。每个项目更像一个配置文件,而不是开发文件。如果所有这些项目都可以在同一项目中(例如,作为子模块)进行控制,那将是很好的。我开始寻找什么子模块给了我,但我认为这与我需要的不一样。
项目结构如下:
/Master Project
/.git
/MySoftwareV1
/Customer1
/.git
ConfigFile1.cfg
ConfigFile2.cfg
ConfigFile3.cfg
/Customer2
...
/Customer3
...
/Customer4
...
/MySoftwareV2
/Customer5
/.git
ConfigFile1.cfg
ConfigFile2.cfg
ConfigFile3.cfg
/Customer6
...
/Customer7
...
/Customer8
...
是否可以实施? 在这种情况下,我的应用程序将控制用户检出/检入的子模块。
如果您需要更多信息,请不要犹豫告诉我!
谢谢!
最好的问候
答案 0 :(得分:2)
我会保持简单,使用单个Git存储库,而不使用诸如子模块之类的奇特东西,而是将项目结构镜像为文件夹层次结构。
如果您想更好地控制技术人员的工作,可以让他们每个人在各自的分支机构工作,这样他们就不会损害他人的工作。审查其更改并将其合并到master分支将是您(或您基于LibGit2Sharp的应用程序的)任务。
由于Git跟踪整个更改历史记录,因此您始终可以撤消不需要的更改。