I just wanted to unshelve a shelveset which has been added some days ago. Meanwhile, somebody else has successfully checked in new versions of files contained in the shelveset. As there exists a conflict in my files between the latest version and the shelveset (because it has another base changeset), i want to revert my code base to a this specific version used by the shelveset.
How can i now determine, which base version of the shelveset has been used? Unfortunatelly, there is no information about this in the "Details" - Information of the shelveset.
You can view the version of the shelved change in the shelveset details dialog - if you right click on a file, you can select "Properties" which will show you the shelved version and latest version.
However, unshelve will not pend new changes against the latest version - it will check out against the shelved version instead. Imagine this scenario:
You pend a change against
$/A
at version 5. You create a shelvesetfoo
and undo your local pending changes.Another user checks in a new version of
$/A
. You get latest, and now your$/A
is updated to version 6.If you were to then unshelve
foo
, since the shelved pending change was version 5, you will now have a pending change at version 5. If you get latest, you will have a version conflict and be able to resolve the conflict to bring your pending changes up to version 6.