I really thought what I did was what we had agreed on - it even took me more time to make it this way then the oppose. That's pretty easy to change, though, but let me make a consideration first:

My idea is that we should by default git-ignore any settings file that contain *local* in the name. That being said, if in a given project we have both *settings.json* and *settings.development.json* available, to locally override a given property that's defined in both files I would have to create two files:

1 - ***settings.local.json***, to override the property defined in *settings.json* when running with no development flag;
2 - ***settings.development.local.json***, to override both the property defined in *settings.json* and the one defined in *settings.development.json*.

I.e.: if you have a database setting defined in both versioned files, to override it locally you would have to create two local files.

Anyway, I think it's relative if this is an issue or not. If happens the situation above - when the versioned files define two databases - it seems to make sense that we would have to override both cases, even if changing the property to the same value on both.

**Decision**: I'll change the order to the one you proposed.