AW: Project structure of .NET-Projects using git submodule or something different
- From
- Harald Heigl <harald@heigl-online.at>
- Date
- Feb 1, 2012, 21:07 UTC
- Message-ID
- <000601cce125$808b3cb0$81a1b610$@heigl-online.at>
- In-Reply-To
- <4F29A0BE.8000803@web.de>
Hi, thanks for your answer!
Show 21 quoted lines
> -----Ursprüngliche Nachricht----- > Von: Jens Lehmann [mailto:Jens.Lehmann@web.de] > Gesendet: Mittwoch, 01. Februar 2012 21:30 > An: Harald Heigl > Cc: git@vger.kernel.org > Betreff: Re: Project structure of .NET-Projects using git submodule or > something different > > Am 31.01.2012 23:41, schrieb Harald Heigl: > > Let's assume following Project structure (Dependencies and > Subdependencies > > are submodules and submodules of the submodules) > > Project > > Dependency 1 > > Dependency 2 > > Dependency 3 > > Dependency 4 > > Dependency 2 > > > > > > The problem is if I want to build them I need to build 2+3, then 1, 4
and 2
> > again and then the project. As you may see project 2 is a submodule of > > dependency 1 and also of project. I don't feel comfortable with this
setup.
Show 9 quoted lines
> > What do you think? > > Hmm, we try to avoid that kind of setup as having checked out different > versions of the "Dependency 2" submodule could have rather surprising > effects. We get along really well with "Dependency 2" only being present > in the superproject and having "Dependency 1" reference that instead of > having its own copy (So we have submodules which are depending on having > other submodules right next to them). Then the superproject is responsible > for tying it all together.
I think you're right, my first thoughts were that if I start a new project I just "git submodule dependency1" and get all the required dependencies and the dependencies within the dependencies and so on ... . With your solution I "git submodule dependency1" and have to think about the dependencies it depends on. On the other hand we are just a small company and the number of submodules is not too big and the missing references in a new project would be easily identifiable, so ... .
And if I want to checkout dependency 1 individually (for whatever reason), I
could still do something like this:
SuperDependency1 (with solution-File)
Dependency1 (as submodule)
Dependency2 (dependency of dependency1 - as submodule)
Dependency3 (dependency of dependency1 - as submodule)Thanks again, I see my concept causes some trouble ...
Any other thoughts or other workflows with git or with tools build around git?
Thanks again, Harald