Re: Notes on Using Git with Subprojects
- From
A Large Angry SCM <gitzilla@gmail.com>
- Date
- Sep 28, 2006, 04:48 UTC
- Message-ID
- <451B542F.8060205@gmail.com>
- In-Reply-To
- <20060927233639.GE21839@spearce.org>
Shawn Pearce wrote: [...]
Show 12 quoted lines
> - Git Porcelain should help the user. > > Git operations should translate down through lower level projects > when possible, and lower level project changes should push up > when possible. > > E.g. git-fetch in a higher level repository should percolate > down into the lower level repositories automatically. Ditto with > git-checkout and probably git-push. git-commit in a lower level > repository probably should update the specification file(s) > in the higher level repository but not commit the higher level > repository.
I think recursing through all subprojects for most Git commands is actually the exception. Plus, porcelains aren't going to help much past the first subproject that isn't Git managed.
[...]
Show 6 quoted lines
> However an annoted tag probably should not be able to be created > on the higher level project unless all lower-level subprojects > are referenced by tags (or the equivilant) in their SCM. Which > implies using a "stable tag" in CVS, a "/tags/foo@rev" in SVN, > or an annotated tag in Git and updating the specification file(s) > to reflect that.
I fail to see a reason for this restriction. Each project should be managed separately. Also, how do you enforce the restriction on other VCSs?