Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Convert changeset(s) to shelveset

Is it possible to create a shelveset from the diff of two versions of one branch just by some operations in tfs/tfpt?

e.g. create a shelveset from (changeset 2013 -> changeset 2034)

like image 898
orange Avatar asked Jan 14 '14 23:01

orange


People also ask

What is a Shelveset?

Noun. shelveset (plural shelvesets) (computing) A kind of changeset containing changes that have been temporarily set aside.

How do you check in code with Shelveset?

In the combobox “What do you want to build?”, select “Latest sources with shelveset”. If you go to the button “…” you can select any shelveset from anyone. Then check the box “Check in changes after successful build”.


Video Answer


2 Answers

It is possible to create a shelveset from a changeset with some limitations. I needed to rollback a change from a branch to remove it from a release but it wasn't in any other branch either so I wanted to keep the change in a shelveset. I achieved this as below:

  • Rollback the changeset and check in the rollback.
  • Rollback the rollback changeset. This gives me a set of pending changes containing the original change.
  • Shelve the pending changes.

You could apply this technique to the case described in the question but it would be a lot of manual effort as it would have to be repeated for every changeset. It would also generate a lot of mess in TFS as you would have to check in the rollbacks of the rollbacks too.

like image 91
Lee Richardson Avatar answered Sep 22 '22 01:09

Lee Richardson


No, it's not possible. Changesets and shelvesets are different things, with different purposes. You could probably write a plugin to do what you're after (retrieve changeset, check out the files, shelve the files).

like image 32
Daniel Mann Avatar answered Sep 24 '22 01:09

Daniel Mann