Baseline Conflicts

3 views
Skip to first unread message

Sean DeNigris

unread,
Mar 23, 2018, 9:42:26 AM3/23/18
to Metacello
I'm having a little trouble understanding what locks/conflict-blocks mean in the contexts of baselines. With configs, it makes sense to lock to say version 2.3.1. But what does the following actually mean?
 Metacello new
 
baseline: 'Magritte3';
lock

From a previous ML thread, Dale wrote:
the lock command works by substituting the locked project spec for the incoming project spec whenever a project reference is made ... the repository and versionString (if a ConfigurationOf is locked) are the applied without change ... The loads: directive is a bit more complicated, because it is a combination of the locked project spec, the project spec of the currently loaded project and the incoming project spec
Since there was no repository or version specified, I'm assuming it just means "use the baseline instead of a config". Is that right? 

Maybe OT, but the inspiration for this question, I got the following error:
MetacelloConflictingProjectError: Load Conflict between existing BaselineOfMyProject [baseline] from gitlab://SeanDeNigris/MyProject:master/src and BaselineOfMyProject [baseline] from gitlab://SeanDeNigris/MyProject/src
Note that the difference is that one explicitly specifies master branch and the other does not. My question here is: which way is better? Are they always equivalent when used in a baseline (in which case I'd prefer the implicit version? If not, when?

Thanks!
Reply all
Reply to author
Forward
0 new messages