In Visual Studio 2015, Microsoft has fixed that default setting everyone hates. Well, I bet the majority of developers hate it. No? Just keep reading anyway.
By default, when you relate a work item to a check in, if the work item is not resolved or closed, it tries to resolve the work item for you. Why? I don't know. It's always been that way.
This, for me, is a real pain. I don't, by default, want to do that. I (usually) want to associate the work item. So how do I change the default? Prior to VS 2015 you had to edit your registry and restart Visual Studio. Doesn't that sound like a great user experience?
Here is how to do that if you have not upgraded or need to use another version other than 2015: http://blogs.msdn.com/b/mitrik/archive/2010/12/03/how-to-make-associate-the-default-action-for-work-items.aspx I think it still works. I only have Visual Studio 2015 now so I don't care.
Thanks to user input the team at Microsoft has created a new setting. It only received 845 votes. It should have received a lot more. https://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/3418758-in-the-team-explorer-change-default-state-value-o
The setting is under Tools > Options > Source Control > Visual Studio Team Foundation Server.
This isn't worded the best but that is the setting we have been asking for. If you un-check the box, from then on the default will be associate for open work items. You don't have to restart or anything but you will need to re-add your work item to see the affect.