0
votes

I have a Developer Check in 240 files into a Changeset #300, in our VSO repo.

I have scripts to pull out files in a changeset to then deploy to different environments. so I have all the files from Changeset 300, and copied them to the server just to find out they were wrong.

FYI: part of that script is:

foreach($i in $ChangesetIDS){& "C:\Program Files (x86)\Microsoft Team Foundation Server 2012 Power Tools\tfpt.exe" "getcs" "/changeset:$i"}

I need to roll back the changes made in the Changeset! But it is not like Changeset #299 has the version just before the one stored in #300.

Is there a way to only pull the files associated with Changeset #300 but from whatever the last time that file was checked in (making the assumption #300 is not always the latest version in the repository.)

1
Changeset #299 definitely has the version just before #300. What if you do a get at that version (which will get the file as it exists at version 299) instead of a getcs (which only gets the files changed in that changeset)Edward Thomson
Why do you need the previous changeset? Can't you just roll back changeset 300?Christopher Painter
Well, C300 may not be all bad. It's several hundred files after all. Rollback is just syntactical sugar, and if you want to preserve part of a changeset, the manual process might be more useful.Edward Thomson
I currently don't deploy the entire "vault" when I move changes to QA and Training - because it is not a straight forward .net project. I only move files from C300, and if I want to undo that I would like to only pull the files from C300 but from C299 *the last version.Don Fouts

1 Answers

0
votes

As Christopher said above that you need to rollback changeset 300, and check in the rollback changes, let's say changeset 301. Then changeset 301 contains all files with a previous version of changeset 300.

However, changeset 300 still exists even if you roll back it. You need to destroy it if you want to delete it permanently.