Hi Paul,
thank you for replying. I know these commands and did already. But submodules are not possible for us in our situation. There are just some simple reasons.
- We can not have branches with and without some plugins in the same repository.
- We can not provide a complete repository including all plugins. What we want is a clonable repository what includes all needed plugins. It must be possible to get all with just a clone.
But I agree that if the plugins are in the moodle directory structure it is not so comfortable for the plugin developer to commit changes only to the plugin repository.
In the meantime I played a bit with the new command "git subtree" (since 1.7.11 available). This command seems to support just all what we need.
- Integrating single plugins into the repository
- keeping the histrory together
- You can push the complete repository including the plugins
- You can push changes inside the plugin to the plugin repository
- You can splitt all commit of the plugin into a separate branch
Here just the two main parts (integrating and pushing) as example:
Integrating:
git subtree add --prefix mod/testplugin ssh://my_repository/testplugin.git master
some changes (just only inside the plugin):
git add mod/testplugin
git commit -m "changed somethings on testplugin"
push the changes only to the plugin repository:
git subtree push --prefix=mod/testplugin ssh://my_repository/testplugin.git master
As you can see it is really simple .
Best regards
Andreas