Kinook Software Forum

Go Back   Kinook Software Forum > Visual Build Professional > [VBP] Third Party Tools
Register FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Rate Thread Display Modes
  #1  
Old 05-27-2003, 08:01 PM
ross ross is online now
Registered User
 
Join Date: 05-27-2003
Posts: 1
Recursive Checkout?

I am trying to checkout about 45 .NET AssemblyInfo.cs files from SourceSafe in different locations. I have supplied the location of all 45 files under "Projects and/or files to process, one per line". I checked the "Perform operation recursively on all subdirectories" box. I want to checkout all these files to their respective folders that they are structured in SourceSafe, so when I do a build, it updates the version number and then I can check them back in with the changes.

The problem seems to be with the "Path for local files". I have left this blank and supplied a path and I still get the same error. If I leave it blank when I run this checkout process it checks out the 1st file on the list to were my local project exists and gets to the second and errors. It appears that it is trying to check out the second file to the exact same location and since all these files have the same name: AssemblyInfo.cs, it bombs. I figured if I left this field blank it would check out these files to were ever I have set for my working directory in SourceSafe (which would be great), but this does not seem to be the case. When I supply the path in this field it does the same process - it checks out the 1st file and then bombs when it gets to the second.

How can a check out these 45 files with exactly the same names but in different location in one operation? Do I have create this process 45 times or run some sort of loop feeding a macro for the file location in SourceSafe and the destinationpath to check it out too? When I Get latest it pulls everything out of SourceSafe correctly and into the correct folders. How can I do the same thing during a CheckOut and not check everything out to one folder but to the proper folder that these files exits in SourceSafe?
Reply With Quote
  #2  
Old 05-28-2003, 04:17 PM
kinook kinook is online now
Administrator
 
Join Date: 03-06-2001
Location: Colorado
Posts: 6,015
The VSS command-line tool (which the SourceSafe action wraps) requires all projects/files entries to be specified at the same project level when performing recursive operations because it only supports a single destination path.

You can recursively checkout all AssemblyInfo files by using a mask (i.e., $/AssemblyInfo.*) in the files/projects field (the 'Check Out Source Files' step in the VStudio.bld sample demonstrates this), but if you want to explicitly name multiple files in different paths, you would need a separate step for each one.
Reply With Quote
  #3  
Old 06-15-2004, 12:44 PM
Li Song Li Song is online now
Registered User
 
Join Date: 06-15-2004
Posts: 1
Isn't the whole point of having Visual Build Pro to eliminate such VSS limitations?
Reply With Quote
  #4  
Old 06-15-2004, 11:25 PM
kinook kinook is online now
Administrator
 
Join Date: 03-06-2001
Location: Colorado
Posts: 6,015
We do provide our fair share of workarounds and extensions for missing functionality in MS products, although I wouldn't consider that the primary reason for using VBP. In this case, there are multiple workarounds, and the work required for such a small gain was not deemed worth the effort.

Using a single recursive step using wildcards seems to be adequate for most users (and I would argue is preferable, as it results in a build process that is less brittle, since you don't have to remember to update the build when a new file is added). You may also be able to specify multiple individual files in different paths by using the Force_Dir variable [1].

[1] http://www.kinook.com/Forum/showthread.php?threadid=354
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



All times are GMT -5. The time now is 08:19 AM.


Copyright © 1999-2023 Kinook Software, Inc.