[TYPO3-v4] Working with submodules

Ernesto Baschny [cron IT] ernst at cron-it.de
Tue May 10 09:18:09 CEST 2011


Stefano Kowalke schrieb am 09.05.2011 19:24:
> Today git submodules was introduced in core for the external projects
> "version" and "workspaces".

It was introduced as a "test-scenario" for now for those two extensions,
following a pros/cons debate amongst the core developers and team
leaders. So consider this a trial, and if it works, we will migrate
other external repositories to this scheme.

> 1)
> Unfortunable the revisions of where the submodules created from were not
> up-to-date. As result fixed issues popped up again. I noticed this on
> fixed CGL issues, so it is possible that all issues realted to verion
> and workspaces since mid of april are back again.

Could you be more specific please? It might have happened that some
commit that went into the core was not applied to the old "versions" or
"workspaces" repository.

Currently the submodules point to these revisions:

master:
workspaces: 893743048f1f6e1b853ad2da1561e0e21264cc83
version: bc4d09579bc8310d81d0eb82a2382b741d4a416e

4_5:
workspaces: 07282260a6719036c8bf2c7fb1ec1273ef02511c
version: bf1f1d02542bc496b35d03b88dc952fa0ae18179

Which are exactly the last ones in the respective repositories:

http://git.typo3.org/TYPO3v4/CoreProjects/workspaces/workspaces.git
http://git.typo3.org/TYPO3v4/CoreProjects/workspaces/version.git

> 2)
> How works submodules in context of TYPO3 and gerrit? Where have I pushed
> things to?

You push to the external repository (one of the both mentioned above)
and the review system will kick in for them (allowing the respective
team members to "commit" at the end - which is the big benefit of doing
so, having independent teams being able to work on these parts).

In order to push to it, you have to setup the submodules directory just
like you setup the "main" core directory (get the commit hook, change
the pushTo URL to gerrit, etc..).

The main core project points to certain commits in the submodules. These
tell GIT which is the current state to be included. So the submodule's
repository might already be further away. For the release team it means
that we will update the pointer at last before a new release. It might
be that we automate this pointer-updating process "on commit" (e.g.
through the CI server). This has to be consider when all other stuff is
settled.

There are already some hints in the Wiki docu about it (especially for
those folks wanting to keep in sync with the core), but as soon as the
process is more proven to be ok, we'll add more docu to it.

Cheers,
Ernesto


More information about the TYPO3-project-v4 mailing list