Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

Git: How to Version Configurations

4 views
Skip to first unread message

Sean DeNigris

unread,
Jan 16, 2018, 6:18:29 PM1/16/18
to Metacello
Is it still recommended to have a separate Configuration branch? Thanks.

Dale Henrichs

unread,
Jan 17, 2018, 5:13:31 PM1/17/18
to meta...@googlegroups.com

Sean,

If you are using a ConfigurationOf and want to keep in a github project and have it reference a specific git commit, then using a configuration branch is still a good idea.

If you store a ConfigurationOf in the same branch as your BaselineOf and packages, then it is possible for you to have a ConfigurationOf in your local git clone that is not the correct ConfigurationOf for that version of the repository:

  1. commit master branch (SHA abcdef)
  2. update ConfigurationOf to point to abcdef (SHA fedcba)
  3. if for any reason someone ends up on abcdef ... the ConfigurationOf in that commit will reference the previous "approved version"

If you have the Configuration stored on a completely separate branch then you will never have confusion ...

OTOH if you will never be tempted to put a SHA in the ConfigurationOf and use a tag or branch name to reference the version to be used, then it should be save to store the ConfigurationOf in the same branch as your BaselineOf...

Dale


On 01/16/2018 03:18 PM, Sean DeNigris wrote:
Is it still recommended to have a separate Configuration branch? Thanks.
--
You received this message because you are subscribed to the Google Groups "Metacello" group.
To unsubscribe from this group and stop receiving emails from it, send an email to metacello+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Esteban Lorenzano

unread,
Jan 18, 2018, 6:38:59 AM1/18/18
to meta...@googlegroups.com
but… why would you want to keep a configuration like that?
best to use a plain baseline.

Esteban

Dale Henrichs

unread,
Jan 18, 2018, 9:49:09 AM1/18/18
to meta...@googlegroups.com

I assume that the configuration is necessary to have a project show up in the catalog?

Dale

Esteban Lorenzano

unread,
Jan 18, 2018, 9:53:35 AM1/18/18
to meta...@googlegroups.com
yes, but I do not see why he will keep it apart.

Dale Henrichs

unread,
Jan 18, 2018, 10:12:34 AM1/18/18
to meta...@googlegroups.com

I thought I explained that in my reply? I guess I wasn't clear enough, what part doesn't "make sense"?

Dale

Sean DeNigris

unread,
Jan 18, 2018, 1:45:23 PM1/18/18
to Metacello
I assume that the configuration is necessary to have a project show up in the catalog?
Precisely.

OTOH if you will never be tempted to put a SHA in the ConfigurationOf and
use a tag or branch name to reference the version to be used, then it
should be save to store the ConfigurationOf in the same branch as your
BaselineOf...

Wouldn't the "integrate with tools like the catalog" use case always have a SHA or similar info in order to have a reproducible loading experience?

Dale Henrichs

unread,
Jan 18, 2018, 2:15:05 PM1/18/18
to meta...@googlegroups.com
Here's where things get odd (I think) if you are planning to release 3.4.1, you could embed the 3.4.1 tag in your configuration and then you would do a git commit (SHA abcdef) ... then you can tag abcdef with 3.4.1 _after the fact_ and then when you checkout 3.4.1 in the git repository and see the ConfigurationOf that matches the checkout ...

if you are using a SHA in the configuration you cannot forecast what the new SHA will be and so no matter what you do, when you checkout the SHA embedded in your ConfigurationOf, the ConfigurationOf in that SHA will never have the correct SHA --- it will always point to an _earlier SHA_ ... if you put the ConfigurationOf on a separate branch you don't expect to see the ConfigurationOf in the "master" branch so there is no confusion...
Reply all
Reply to author
Forward
0 new messages