Hi and thanks for the response.
In our process, each developer has their own Salesforce sandbox environment for development. Once a developer is happy with their local/sandbox changes, they use SVN to check in their changes to the shared repo and we have Jenkins/Ant send the changes to a shared Salesforce environment for testing. After that code changes move through other Salesforce sandboxes for QA, User Acceptance Testing, etc. until finally being deployed to production at the end of a sprint.
At the beginning of a new sprint I start by pulling down a copy of the latest code (from our shared repo) to my machine via SVN. Then I'll usually use Sublime/Maven's Mate to save that code to my Salesforce Sandbox and compile. Then I can use Sublime to make code changes locally and compile them to my Salesforce sandbox. When I'm happy with my changes, they are merged with other developer's changes using SVN/Jenkins/Ant. Then they move through each phase of testing, etc.
I'd prefer to use TWS but even if I do all the previous steps outside of TWS and then make a new project and pull the code from my sandbox I get lots of changes between what I have locally and what the SVN repo has. Most of these changes are insignificant such as white-space, capitalization and single-quote vs. double-quotes, etc.
I really wish I could just tell TWS to save my local changes to my sandbox. Somehow, I always end up in this situation where it thinks my sandbox's changes are newer than the ones on my machine so no matter what, my local changes can never be written to my sandbox so I can't ever really do any work. It's been super frustrating because I really like TWS and would really prefer to develop on it.
I've tried about every configuration I can but TWS seems to want my local files to always exactly match what's in my sandbox which doesn't really make any sense. That's why we have an IDE in the first place is to make changes to the code, right?
What would be nice is the following:
- When comparing server vs local changes, allow the user to choose which one to keep and write that file to the server
- When comparing server vs local changes, allow the user to merge the two and write th result to the server
- An option to select a) disallow overwrite of server changes b ) allow overwrite of server files with warning c) always overwrite server changes
As it is, the only option we seem to have is to always discard local changes in favor of what's on the server.