Project
ReSharper
Priority
Show-stopper
Type
Feature
Fix versions
6.1
State
Fixed
Assignee
Serge Baltic
Subsystem
Settings
Affected versions
No Affected versions
Fixed in build
6.1.0.11187  
  • Created by   Jeff Ostrin
    4 years ago (22 Aug 2007 21:12)
  • Updated by   Serge Baltic
    5 months ago (06 Dec 2011 19:45)
  • Jira: RSRP-47805
    (history, comments)
 
RSRP-47805 Externalize all settings to a file so they can be shared
29
Issue is visible to: All Users
  The issue is visible to the selected user group only
For team collaboration, it would be great if all the settings could be exported to a file and automatically imported when the file changes (or when Dev Studio restarts).

Today, any changes to 'Inspection Severity' or other settings have to be done on every machine - this is unmanageable for a large group that wants consistent settings.

Also, only the code style settings can be externalized today. My team has checked a file into source control but it is still a manual step that every engineer has to do to load that file whenever it changes (even though they already have the new file because they got it when they got the latest code)

It is desirable for all settings (code style, inspection serverity, etc) to be externalized to a file that is automatically loaded when it changes or when dev studio restarts.
Comments (18)
 
History
 
Linked Issues (?)
 
TeamCity Changes (0)
 
Michael Hedgpeth
  Michael Hedgpeth
09 Jun 2011 20:10
11 months ago
Is this going to be targeted for 6.0? This is a very important feature to me.
Jura Gorohovsky
  Jura Gorohovsky
09 Jun 2011 20:27
11 months ago
@Michael Substantial reorganization of settings is or our radar for version 6 but not for the initial release (6.0). We expect to be able to ship an update to the settings engine for 6.1
Related Changes
Fix versions
6.0, 6.1
Markus Springweiler
  Markus Springweiler
16 Jun 2011 12:38
11 months ago
created 3 years ago? wow...
Rick Fisher
  Rick Fisher
13 Oct 2011 20:10
7 months ago
We would upgrade from 5 to 6 for this feature.
Serge Baltic
  Serge Baltic
13 Oct 2011 21:17
7 months ago
EAP for 6.1 with this feature will be opening this fall.

First builds will allow sharing any setting across the solution file – not exactly sharing with the external file yet, but still fitting most of the needs (I hope). External files will follow. It would help us if you comment on your scenarios involving the manually-defined external file rather than sharing the settings along with the solution.
Jeff Ostrin
  Jeff Ostrin
14 Oct 2011 02:37
7 months ago
We do not use solution (sln) files to manage our projects. Instead each developer creates their own solution file and loads only the assemblies they need - visual studio (and resharper) respond much faster that way. Because of that, having settings saved/shared across via the solution file is really what we are looking for.

For us, it would be helpful to have settings declared in a file and each time visual studio starts it could read in the most recent settings. That would keep things consistent across projects.
Serge Baltic
  Serge Baltic
14 Oct 2011 15:54
7 months ago
Jeff: settings are not written into right the solution file (otherwise any external settings change would have resulted in a solution reload, which is undesirable). This separate file could still be shared, even though the .sln file is unique to each machine.
Jeff Ostrin
  Jeff Ostrin
20 Oct 2011 23:26
7 months ago
Thanks Serge. If we can create one settings file that we check in with our source code and everyone can automatically get updates when they get the latest version of code then I will be happy :)
Oleg Gerovich
  Oleg Gerovich
02 Nov 2011 17:42
6 months ago
We would be looking to create a single file that could be applied to all solutions and shared it in revision control. I should be able to point ReSharper to where it is synched on my machine and any time it changes ReSharper should pick up new settings. We are trying to create a uniform set of rules/inspections/settings to apply across all solutions.
Serge Baltic
  Serge Baltic
02 Nov 2011 20:08
6 months ago
Oleg: could you please expand on the scenario?

You need the solution file to point to some settings file, same one for everyone and for all solutions. This reference should be stored along with the solution in the source control. Right?

Now, the shared file. Is it expected to be in source control also (in some location common for all solutions), or on a UNC path to a network share, or on each developer's computer locally?
Oleg Gerovich
  Oleg Gerovich
02 Nov 2011 20:17
6 months ago
Serge:

We need ReSharper to point to some settings file, not solution (although the latter could be useful for custom settings for a particular solution to overwrite the settings in the ReSharper settings file).

Yes, the shared file will be in source control in a common location. Once the developers sync their computer, they should be able to navigate from some ReSharper options menu to this file. If the contents of the file change, ReSharper should refresh the settings immediately without having to restart Visual Studio.

Perhaps our scenario is slightly different from others. Basically, I'm looking for a way to share settings without solutions knowing/storing any ReSharper info at all. I simply want to point ReSharper to one file and apply those settings to any solution I open, regardless of whether they are in source control or not. Does that make sense?
Serge Baltic
  Serge Baltic
02 Nov 2011 20:46
6 months ago
Oleg:

This makes strong sense if you got more solutions than developers. You'll be able to add a settings file as a layer to the settings system on each of the computers and have it behave the expected way.

In case there are more developers than solutions (which is also quite common), it might be easier to do the setup once per solution rather than once per machine, and that's what I meant in the previous comment.

We're not exposing UI for adding new layers in the first EAP build though – to focus on basic operations with predefined layers which are global settings and solution settings of the solution currently loaded.
Oleg Gerovich
  Oleg Gerovich
02 Nov 2011 21:16
6 months ago
Thanks, Serge. Our case is few developers, many solutions. We will inpatiently wait for the EAP with global settings!
Markus Springweiler
  Markus Springweiler
02 Nov 2011 21:41
6 months ago
If it could work like Settings.stylecop (including relative positioned merged files) file it would be perfect (for me).
Markus Springweiler
  Markus Springweiler
07 Nov 2011 17:43
6 months ago
I'm sorry but I'm unable to get any valuable result from this new 6.1 system – is there any documentation about it? Why are the "Move Up", "Move Down" and "Mount to" buttons always disabled? Which is the precedence? Has to top item highest priority or the bottom one? Why are the "save" and "save to" buttons always closing the dialog? Which sense does it make? (I edited "File Header Text" option and clicked on "Save To Solution-shared-with-team" : The dialog closed, and on reopen the old setting was there again).
And what is "Solution.6.1.resharper" file still for?
Sergey Coox
  Sergey Coox
07 Nov 2011 19:27
6 months ago
We're going to publish a blogpost on the settings quite soon.
Jeff Ostrin
  Jeff Ostrin
07 Nov 2011 20:32
6 months ago
Serge -

I wanted to chime in to say that the situation Oleg describes is exactly what I am looking for as well. We have many more solutions than that developers; also developers make ad-hoc solutions regularly here. We do have a developer setup script which can point Resharper at a standard location.

So what I want (and my original desire behind opening this ticket) is to get support for what Oleg describes.

Thanks
Serge Baltic
  Serge Baltic
06 Dec 2011 19:45
5 months ago
I think the current EAP versions are good enough around this functionality, and their quality is acceptable.