How to get the files in a particular Changeset?

If you are having a problem using Vault, post a message here.

Moderator: SourceGear

Post Reply
robe070
Posts: 176
Joined: Wed Feb 06, 2008 7:42 pm

How to get the files in a particular Changeset?

Post by robe070 » Mon Jul 07, 2008 12:18 am

I would like to be able to Show Version History and just get the files in that changeset, not the whole tree.

If the get was available when viewing the details (just diff at the moment) that would be OK too, provided I can multi-select all the items.

I tried going the Show Item History route, but it does not group the changes into changesets (displaying the changeset at the current folder level would be useful) and you can only select one file at a time.

A particular team member of ours needs to do this frequently and has offered to buy me lunch if we can get this feature implemented :-)

robe070
Posts: 176
Joined: Wed Feb 06, 2008 7:42 pm

Post by robe070 » Wed Jul 09, 2008 6:00 pm

I wonder why there is no reply? Is it too trivial?

I can't see a way to do this so I would like to submit this as a feature request.

Its particular useful for merging changes into a 'released' branch of our code when the branch is known to have no other changes. It would be much faster than the Merge Branches wizard.

Its also useful on our build machine where we may not have the working directory set to the source code location. Thus we need to explicitly get the files.

Of course you can get each indvidual file, but that requires you selecting each file in each folder and the correct version of that file. Rather than a simple select the version and get it to a target.

Our customers have a slow upgrade cycle and so we maintain many past releases and also have other customers on premium support who receive patches, which are thankfully in a single branch for all such customers on a particular release :-)

All these releases means that speeding up the merging of files and applying changes to the build is very important for us.

And what should the target be? It needs to be at the same 'level' as the version you are viewing. In this kind of process we would be at the Product level and thus would select a target directory that is also at the product level, though in a branch.

jeremy_sg
Posts: 1821
Joined: Thu Dec 18, 2003 11:39 am
Location: Sourcegear
Contact:

Post by jeremy_sg » Thu Jul 10, 2008 7:56 am

Rob,

It would be a multi-step operation. First, use VersionHistory to get the transactions (look for the TxID) for the folder. Then use ProcessCommandTxDetail() to get the transaction details. In the TxInfo object, all of the changes are in the items collection. Check the CommandLineClient.cs and XmlOutput.cs files that are included in the API zip for examples of working with these objects.
Subscribe to the Fortress/Vault blog

robe070
Posts: 176
Joined: Wed Feb 06, 2008 7:42 pm

Post by robe070 » Thu Jul 10, 2008 5:17 pm

Write code? Thats a frustrating answer.

I gather you think this kind of feature is not appropriate for your user interface. Why is that?

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Post by lbauer » Thu Jul 10, 2008 8:45 pm

We do have a feature request logged for this, but it has not yet been implemented. I'll add your comments and bump it up in priority.
Linda Bauer
SourceGear
Technical Support Manager

jeremy_sg
Posts: 1821
Joined: Thu Dec 18, 2003 11:39 am
Location: Sourcegear
Contact:

Post by jeremy_sg » Fri Jul 11, 2008 7:30 am

Rob,

Sorry, I just assumed you were talking about the API (since we've talked a lot about the API in the past). I agree that right now, we have Diff as the only menu option in our Changeset Details dialog. It would be helpful to add get to that context menu.

As an (admittedly lame) workaround, the web client's Transaction Details page (you can get a link to it from the File History web page) does have a Get link for the version of the files that were checked in.
Subscribe to the Fortress/Vault blog

robe070
Posts: 176
Joined: Wed Feb 06, 2008 7:42 pm

Post by robe070 » Sun Jul 13, 2008 1:31 am

We are using 4.1.1 and I can't see the get link on the page displaying changes in the last 7 days. I can't see a get when I go into the version listing for the file either.

jeremy_sg
Posts: 1821
Joined: Thu Dec 18, 2003 11:39 am
Location: Sourcegear
Contact:

Post by jeremy_sg » Mon Jul 14, 2008 10:53 am

If you're on the TransactionDetails.aspx page, clicking on the version number should get that version of the file.
Subscribe to the Fortress/Vault blog

robe070
Posts: 176
Joined: Wed Feb 06, 2008 7:42 pm

Post by robe070 » Mon Jul 14, 2008 5:17 pm

I can get to VaultHistory.aspx but I can't see how to get to TransactionDetails.aspx

jeremy_sg
Posts: 1821
Joined: Thu Dec 18, 2003 11:39 am
Location: Sourcegear
Contact:

Post by jeremy_sg » Tue Jul 15, 2008 7:43 am

There should be a view details link for every row (excluding labels) in the VaultHistory.aspx page.
Subscribe to the Fortress/Vault blog

robe070
Posts: 176
Joined: Wed Feb 06, 2008 7:42 pm

Post by robe070 » Tue Jul 15, 2008 7:12 pm

OK, got it. At least I know its there. I think its easier to put modified date in File List of Vault Client and navigate to each folder and get them out.

I'd still like the enhancement though :-)

andrews
Posts: 55
Joined: Tue Feb 05, 2008 7:40 pm

Post by andrews » Tue Jul 15, 2008 7:47 pm

Be honest Rob - you just want that free lunch :roll:

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Post by lbauer » Thu Jul 17, 2008 9:02 am

:)
Linda Bauer
SourceGear
Technical Support Manager

robe070
Posts: 176
Joined: Wed Feb 06, 2008 7:42 pm

Post by robe070 » Thu Jul 17, 2008 4:43 pm

Scratch the workaround I mentioned. With multiple developers working in a folder with many files using the Remote Date there are just too many changes to be of any use practical use.

Definitely need that free lunch ... oops I meant enhancement. :)

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Post by lbauer » Fri Jul 18, 2008 10:39 am

Got it.
Linda Bauer
SourceGear
Technical Support Manager

Post Reply