Re: Config spec for git

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Nov 17 2021, Wallace, Brooke T (US 349D-Affiliate) wrote:

> Has any one considered adding a config spec feature to Git or does Git alreadt have some way to support the same features?
>
> I've been using Git for a while now for small projects but taking on a
> new larger project I've come to realize that Git does not have config
> specs and so seems to be missing an important feature for managing
> large projects.
>
> We use configuration specs to select directories from a common code
> base (repo) and map them into different baselines to creat multiple
> product builds with different feature sets. We used this feature in
> VCSs such as Clearcase and Perforce. Ultimately this allows us to
> manage the repo in one directory structure and create product builds
> with a different one. For example the repo has multiple directories
> for different products/targets, but a baseline, the workspace, has
> only one target directory always with the same name mapped to the same
> location. Obviously the corresponding directories in the repo have
> different names.
>
> Git supports the notion of submodules, but I see no way to map a
> submodule directory to a different name, remove unwanted subdirs of a
> submodule, or map a submodule over a subdirectory of the primary
> repo. Config specs also allow you to specify a specific branch or
> version that you want to map to your workspace independent of other
> directories, branches and versions.
>
> I suppose it may be possible to achieve the same result by treating
> the primary repo as the configspec. But I feel like there are some
> features config specs support that i do not have using submodules, but
> might need down the road.
>
> I can see that omitting, obscuring, or overwriting parts of a repo
> would not play well with the commit id. So I imagine there could be
> some real complications trying to add support for the notion of a
> flexible config spec.
>
> Appreciate any comments/feedback

I understand all the terms involved in your E-Mail except "config spec",
so on the first couple of readings I was thoroughly confused.

I gather from some Google searching that you may be referring to
ClearCase SCM jargon:
https://en.wikipedia.org/wiki/Rational_ClearCase#The_configuration_specification
&
https://www.ibm.com/docs/en/rational-clearcase/8.0.0?topic=views-how-config-spec-works

>From your description it seems like you're talking about some
combination of the work-in-progress "sparse checkout" feature, and a
feature to compose arbitrary subdirectories and overlays of existing
repositories.

As far as I know nobody's working on the latter, although I suppose some
clever combination of submodules and sparse checkouts might make it
possible.

All of that's really a shot in the dark, I think I'm probably not the
only one who'd benefit from a description of what you'd expect a "config
spec" to do for you that doesn't assume pre-existing knowledge of the
term.

More generally it's a very common initial migration stategy between
SCM's and X SCM -> Git in particular to first consider how you could 1=1
map existing behavior to Git.

Those sorts of migrations are generally much more painful in the longer
term than considering how you'd map the software or assets you have to
Git if you were starting out today, which may be something to think
about.



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux