Hi Mathias, thanks for the input!
On 11.08.2016 06:49, Mathias Fröhlich wrote:
For subtree-merge: There is a pair of visualisation teams that used to work for the same company until they both got sold to individual vendors but still wanted to share their basic framwork code. Those two applications done by these teams are somewhere beyond - may be far beyond 1e6 loc each. The shared part is at least 2e5 loc, probably more. I do not recall the exact numbers. The shared part is communicated via a common upstream repository managed by git-subtree. There happens branching merging, rebasing, the usual git things. The git version that is used is ancient, the one from redhat 6. The git repository is based on an import from svn with non standard branch names in svn and that svn used to be imported from cvs. All together more than 10 years of history. Observed problems: It needs special care to be handled. There were not so nice things that happened like disconnected git object trees. After installing a git hook in the subtree managed upstream repository that refuses such a push, disconnected object trees never happened again. Also checking out commits from the subtree side of a subtree merge gives interresting results. Well, plausible once you think about it, but probably surprising for the average git user. You will see a completely different filesystem structure, the one of the subtree you have.
I take it this means `git bisect` becomes unusable? At least it looks like it after a bit of playing around with it. That seems like a show-stopper :(
Cheers, Nicolai
The success side: A hand full years sharing > 2e5 loc where normal development happens. Probably some orders of magnitude more changes than I observed with addrlib since its creation. It basically does what you expect when you think about the problem to be solved. So, beside the problems there has been loads of expected and good behavior. Without subtree merge that undertaken would have been much more difficult to infeasible. I do not think that I can give a recomendation. The basic constraints like the age of git used and the history of the repositry may introduce problems that you never observe with something simpler. best Mathias
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev