dotSettings layers: shared file over user application data folder
Hi All,
For our company, I'm trying to setup a "company shared settings file", simular to this.
This works fine, however, the global user's settings file (C:\Users\<USER>\AppData\Roaming\JetBrains\ReSharper\vAny)
always takes precedence over this "company shared setting file".
I understand the layering approach:
- Solution - personal
- Solution - team shared
- This computer
I can live with layering idea that a team can overwrite default computer settings, and a person can overwrite team settings.
However, within the "This computer" layer, there is no option to reorder settings files from "This computer".
This means that the global user's settings file (C:\Users\<USER>\AppData\Roaming\JetBrains\ReSharper\vAny), always takes precedence over the company wide settings file.
How can one force the company settings to be applied over the global user's settings?
- Is it possible to reorder usages in the "This computer" layer?
- Is it OK to just delete all .dotSettings from C:\Users\<USER>\AppData\Roaming\JetBrains\ReSharper\vAny, so that no global user settings exist?
How are other people dealing with company wide settings?
I think it would be a good option to make it possible to "switch off" layers / elements within layers, so one always knows it's (for instance) using company settings.
Thanks for your time,
Koen
Please sign in to leave a comment.
Hi Koen,
Thanks for the message.
The thing here is playing with 'Default ReSharper Settings' (and 'Not-Default' ones). If the dotSettings file contains non-changed value (e.g. default one), and 'This Computer' layer contains changed options - the option will still be overriden.
Here are some steps to workaround this behavior:
1) Reset This Computer layer in the Manage Options dialog (removing the 'vAny' folder content does the same).
2) Apply the 'check-uncheck' step for Shared Settings layer. E.g. if a some R# options checkbox is checked by default, just uncheck it -> Save the settings -> check it back. Doing this will provide R# the info, that this option in now in non-default value, and override the 'This Computer' settings.
I agree that this behavior is not very logical (sometimes) and is not easy to understand, but this is how things work now.
Hope it helps.
P.S. We will discuss this layer behavior inside the team. IMHO, possible solution for this is to export full settings with their default values to the dotSettings file... We will look into it.
Attachment(s):
TxtPage2.png
TxtPage1.png
Thanks for your clarification.
In order to create a set of rules for our company, over all of our projects, we took this approach:
If he chooses to override certain settings, he will break the build in step 4
We're running this for a couple of weeks now, without too many problems.
Thanks for your time!
Koen