2

I've looked at this question which has lots of great answers in the Unix / Command line context, but I'm working in a Visual Studio 2015 environment, with no command line access, only VisualSVN in VS and TortiseSVN in my local filesystem.

Is there a way to stash changes in this environment? I have to stash changes because my local deploy script will push any pending changes and I have no way to change the deploy script parameters.

JacobIRR
  • 8,545
  • 8
  • 39
  • 68
  • 2
    Going off of the link you just posted, would the accepted answer in that thread (or even JesperE's answer) be acceptable for you? Because if you have TortoiseSVN, all of those commands are still available to you without the need for the command line (assuming there is a particular restriction as to why you can't use the command line). Those commands work on both windows/linux CLIs and also with windows' TortoiseSVN's shell. For example `svn copy` is the same as **right click > TortoiseSVN > branch/tag**. – Chris Dec 20 '17 at 21:20
  • Are you asking about shelving your changes locally? Or do you want to create a shelve in the remote repository? – bahrep Jan 15 '18 at 20:52

2 Answers2

2

The answers in that question that suggest making a temporary branch or a patch file look good to me. You can automate such methods quite easily.

You can also do a straight-up file copy of your entire working copy and put it in the directory above, ready to replace later.

Finally, you can do what I tend to do, which is to have two working copies on the go at the same time. I use one for doing regular dev work, and the other for merging stuff into trunk, performing releases and hotfixes. You can point your deployment scripts at that working copy instead.

BoffinBrain
  • 6,337
  • 6
  • 33
  • 59
1
  • You can create a patch. You will be able to apply the patch later and continue with the unfinished work. In Visual Studio, run the VisualSVN | Create Patch command.

  • You can create a shelve in the repository that will be a snapshot of the current (dirty?) state of your working copy. The procedure it pretty the same as for creating a complex tag. Just create a shelve out of your working copy before reverting local modifications and switching to another branch.

    The Copy (Branch / Tag) dialog window of TortoiseSVN has a Working copy option. When you run the Branch command in VisualSVN, select the Working copy option and enter the URL to a new shelve. The created shelve will contain the modifications that you did not commit before making this copy.

  • Note that you can keep multiple working copies on your workstation. Use one working copy for your main tasks, another working copies for other tasks.

Community
  • 1
  • 1
bahrep
  • 29,961
  • 12
  • 103
  • 150