On 2015-02-11 19:17, Dicebot wrote:
$ git clone --recursive [email protected]:D-Programming-Language/dlang
This will clone all submodules set to latest released version tag
(v2.066.1 right now)
What I don't like about this is that you don't get the latest code.
Maybe this will cause more problems for new developers than it will fix.
$ cd dlang; ./dlang.d update
This will update all submodules to latest git master heads.
And when you do have the latest code, you will also have a "dirty"
working directory.
git submodules are designed to track exact commit hash of remote
repository - it is impossible to define those to always be cloned as
most recent version of some branch. One can keep updating submodule
references with some daemon service (Vladimir does exactly that in
https://bitbucket.org/cybershadow/d)
I was thinking of using git hooks that updates the submodules. That is,
each repository that is a submodule would have a git hook that is run
after each commit. The hook would update the submodule in the meta
repository.
but that will pollute history of
meta-repo with dozens of trivial commits every day making it hard to use
it for any real code (and also relying on well-being of that daemon
service).
Will there be much "real" code in the meta repository? Are you thinking
about shared build scripts?
--
/Jacob Carlborg