Sharing Settings Across Users and Solutions

Sep 30, 2010 at 11:10 PM

I would like to be able to share settings between developers and across all solutions that are being worked on.

Ideally I would like to have 1 file that would be in source control and when developers got all their solutions and source from source control they would also get the resharper settings.

Is this possible?

The best solution I can find right now requires a R#Settings file per solution and the developer would need to check the box to "enable settings sharing for current solution" every time they worked on a new solution.

I would really like to be able to avoid requiring the need to check the enable box for every solution.  Is there some other file I could commit to source control that would make it so the "enable settings sharing for current solution" was checked by default, or a regkey, or some setting file that could be changed once on the developers machine?

Thank you very much for any help.

Fred

Coordinator
Oct 7, 2010 at 4:05 PM

Hi Fred,

You can configure the plugin to work with the specified settings file, but you'll have to do it for every solution. I was thinking of making the automatic configuration of new solutions, but didn't find any good approach. The only thing i can do - is look for a certain file name inside the solution folder and load it, but you'll have to store all solutions at the same directory, which is not always possible. The other possible solution would be to use the Personal Settings options page You can set the directory with the shared settings file there, set the settings file as default and remove settings sharing configuration from all solutions. This way the default settings file will get loaded automatically and you won't need to configure anything anymore.

Nov 8, 2010 at 11:30 AM

One good solution for sharing settings could be to take the "walk the path" approach.

Where one walks up the path looking for a settings file matching the personal settings filename (or default), before defaulting to the personal settings file.

This way no source controlled solution is dependant on a particular path, batches of solutions can use the same global settings.

e.g.

Both solutions:-

c:\source\svn\root\company\product\trunk\mainsolution.sln

c:\source\svn\root\company\product\branch4\release2\mainsolution.sln

will all use the same settings file if it is stored here or above.

c:\source\svn\root\company\product\resharper.settings

--

For me this would be ideal and probably quite simple to implement. Pretty please - I have the bare minimal code changes if you want them?

 

Nov 8, 2010 at 4:11 PM

Thanks for the responses.

I think paulreed's suggestion would work for me assuming there is some way to indicate the settings filename at a global level.  I'm guessing there would need to be a UI change too in order to enter this info and tell the RSM to work in this "walk the path" mode.  Of course this info would have to be saved at a global level too.  By global I mean across all solutions within a user's login, not across all machines or even all users on one machine.

I would love for this functionality to be added.

Dec 3, 2010 at 11:10 AM

(bump)

@4uxnbIx

Is there anyway I can propose this feature ? 

 

Coordinator
Jan 13, 2011 at 5:30 PM

Hi All,

Finally, i've got some spare time to work on the plug-in. The suggested solution sounds good to me. I'll add it to my todo list.

PaulReed You can create an issue in Issue Tracker. Or you can implement it and submit a fork! ;)
Jan 14, 2011 at 5:17 PM

4uxnbIx - thanks for that. I have raised an issue for this, but alas no longer have the code. I might try and redig in the source and find the points of change, but as I recall I was missing the UX changes that might be required.

Hope thats ok.

Coordinator
Jan 17, 2011 at 10:21 AM

Hi paulreed,

Don't worry, i have already finished implementing this feature. Still need to test it, though, but i think the new RSM version will be out next week.

Feb 4, 2011 at 3:59 AM

When will the said release be available?  it would be REALLY helpful on my current multi solution project.

Cheers,
Stonie.

P.S: thanks for the useful tool.

Coordinator
Feb 4, 2011 at 9:15 AM

Hi Stonie,

I plan to release the new build on monday next week.

Feb 4, 2011 at 9:50 AM
that's good news, thanks.

I compiled myself off the head in hg but looks like to commits for a while: https://hg01.codeplex.com/rsm/graph/b85319da2ec3

Keen to see the results.

Cheers,
Stonie.


On Fri, Feb 4, 2011 at 8:15 PM, 4uxnbIx <notifications@codeplex.com> wrote:

From: 4uxnbIx

Hi Stonie,

I plan to release the new build on monday next week.

Read the full discussion online.

To add a post to this discussion, reply to this email (rsm@discussions.codeplex.com)

To start a new discussion for this project, email rsm@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com


Coordinator
Feb 7, 2011 at 10:01 AM

Implemented. Please install the latest RSM version.

Feb 15, 2011 at 11:02 PM

Thanks for implementing this!  

I gave it a try today and it seems to work great, exactly what I was looking for.  It did take a little while to figure out how to get it to work, but with a little documentation this will be a great addition.

Thanks again.

Coordinator
Feb 16, 2011 at 6:22 AM

Yeah, documentation... This is the first release without documentation update. :( And i still cannot find some time for it... Anyway, great thanks to you for your feedback!

Feb 23, 2011 at 10:02 AM

Hi

This new feature to share settings across a team and all solutions is exactly what I need for our company.  Please can you advise the basic steps on how to configure this?  I am guessing it has something to do with the "Shared Settings" option in the settings manager but I can only seem to add settings to the personal section.

I plan on storing our master R#Settings in source control in the root of all our source code as I believe this new settings manager version would be able to load and detect these settings and therefore use them across our entire source code repository?

If my understanding is incorrect on how this is intended to work please let me know.

 

Regards

Coordinator
Feb 24, 2011 at 2:07 PM

Hi Matthew,

First, you need to load a solution, otherwise Add Solution Settings and Add Global Settings buttons will be greyed out. Then, open 'VS Main Menu\ReSharper\Tools\Manage Settings...' dialog and click on the Add drop-down button, select Global Settings item. Place the settings file at the root folder of all your projects sources. This way all solutions under that folder and sub-folders will automatically locate the settings file and load it.

Hope this answers your question.

Cheers

p.s. I guess it is time to go and update the documentation section...

Mar 3, 2011 at 9:57 PM
Does not seem to work as expected for me?

I have placed my global settings file above the root of my solutions (to share it among solutions)
I get a dialog saying that I cant place the file above the solution root? this seems counter intuitive if the idea is to share this file across solutions?

Is this is intended behaviour or am I missing something?

Cheers,
Stonie.


On Fri, Feb 25, 2011 at 1:07 AM, 4uxnbIx <notifications@codeplex.com> wrote:

From: 4uxnbIx

Hi Matthew,

First, you need to load a solution, otherwise Add Solution Settings and Add Global Settings buttons will be greyed out. Then, open 'VS Main Menu\ReSharper\Tools\Manage Settings...' dialog and click on the Add drop-down button, select Global Settings item. Place the settings file at the root folder of all your projects sources. This way all solutions under that folder and sub-folders will automatically locate the settings file and load it.

Hope this answers your question.

Cheers

p.s. I guess it is time to go and update the documentation section...

Read the full discussion online.

To add a post to this discussion, reply to this email (rsm@discussions.codeplex.com)

To start a new discussion for this project, email rsm@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com


Coordinator
Mar 4, 2011 at 6:47 AM

Hi Stonie,

Weird, could you please give me the path to your solution and the path where you are trying to create a global settings file?

Thanks,

Roman

Mar 4, 2011 at 7:05 AM
it's back up the tree two dirs then down two:

./tools/rsm/[settings file here]
./main/sln/[sln here]

Cheers,
Stonie.

On Fri, Mar 4, 2011 at 5:47 PM, 4uxnbIx <notifications@codeplex.com> wrote:

From: 4uxnbIx

Hi Stonie,

Weird, could you please give me the path to your solution and the path where you are trying to create a global settings file?

Thanks,

Roman

Read the full discussion online.

To add a post to this discussion, reply to this email (rsm@discussions.codeplex.com)

To start a new discussion for this project, email rsm@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com


Coordinator
Mar 4, 2011 at 7:38 AM
Edited Mar 4, 2011 at 7:39 AM

The problem is that you are trying to create the global settings file at the different folder branch than the solution location. You can only place global settings at the ./main folder or any other folder UP the solution file path. When searching for a global settings file RSM goes strainght up and won't try to search for setting in sub-folders hierarchy of each parent folder of a solution.

*copy\paste of my previous answer*:

You can only create global settings files at the solution folder, or up the folder hierarchy. I.e. if your solution is located at C:\My Documents\SourceCode\My Project\ you can create a global settings file at:

C:\My Documents\SourceCode\My Project\

C:\My Documents\SourceCode\

C:\My Documents\

and etc.

Mar 5, 2011 at 12:28 AM

I suspected as much... why can you not just select a path for the settings file?

Regards,
Stonie.

On Fri, Mar 4, 2011 at 6:38 PM, 4uxnbIx <notifications@codeplex.com> wrote:

From: 4uxnbIx

The problem is that you are trying to create the global settings file at the different folder branch than the solution location. You can only place global settings at the ./main folder or any other folder UP the solution file path. When searching for a global settings file RSM goes strainght up and won't try to search for setting in sub-folders hierarchy of each parent folder of a solution.

*copy\paste from my previous answer*:

You can only create global settings files at the solution folder, or up the folder hierarchy. I.e. if your solution is located at C:\My Documents\SourceCode\My Project\ you can create a global settings file at:

C:\My Documents\SourceCode\My Project\

C:\My Documents\SourceCode\

C:\My Documents\

and etc.

Read the full discussion online.

To add a post to this discussion, reply to this email (rsm@discussions.codeplex.com)

To start a new discussion for this project, email rsm@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com


Coordinator
Mar 17, 2011 at 7:29 AM

You can still do that at the shared settings file options dialog. There you can define a path where the actual settings will be stored. But you still need to create the global settings file somewhere along the solution path, because this is the only convinient way for RSM to quickly find shared settings.