所以,我有以下文件夹结构:
.
└── testSubModules
├── README.md
└── controllers
├── controller-1
│ └── test.c
├── controller-10
├── controller-2
├── controller-3
├── controller-4
├── controller-5
├── controller-6
├── controller-7
├── controller-8
└── controller-9
testSubMoudles
是git目录的根目录。controllers
目录下的每个文件夹代表eclipse
中的一个项目我希望能够在根目录(
testSubModules
)以及每个项目下管理项目。我想submodules是我要找的。
要求/目标/期望的工作流程
一个新的开发人员应该能够从根
git clone url/subModules
或按单个项目
git clone url/subModules/controller-1
从阅读那个教程来看,我认为这是不可能的。
开发人员如何仅对子模块进行提交和推送更改?
假设我在控制器1下做了一些工作。将我的更改添加到子模块的工作流是什么
比如说,埃里克,另一个开发人员现在想让我对子模块进行修改,他如何才能更新他的工作区?
比方说,james,另一个开发人员想要所有东西,然后他可以在项目的根上做一个
git pull
。也许我所有的状态都不是子模块的预期用途。那样的话我该怎么办?
最佳答案
使用rakefile概念:在项目中,可以组合多个项目:desc 'submodule'task :submodule do sh 'git submodule init' sh 'git submodule update' sh 'git submodule add <origen>'....end
desc 'submodulePull'task :submodulePull do sh 'git submodule update' sh 'git submodule foreach git pull'end
终端:rake submodule
在项目中添加其他项目。
独立使用项目。可以运行git等。project
以拉取所有项目更改。
submodule link
关于git - Git和子模块的用法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30656743/