Get all files checked out by a user using the Visu

2019-04-06 15:10发布

问题:

We currently use VSS 6, this is not going to change I am afraid.

I am attempting to write a script that will allow a user to quickly copy all files that they have checked out to another directory tree. In order to do this I need to get a list of all the files that the user has checked out, and the directory that the file is checked out to. This is easy enough to do using status search in the GUI. But I need a way of doing it from the command line utility ss.exe.

回答1:

Two links that may be of use:

VSS CommandLine Commands

VSS CommandLine Options

To expand on Panos reply

ss.exe Status $/ -R -U<Username>

Will get you the files of a particular user.



回答2:

From the command line:

  1. cd C:\Program Files\Microsoft Visual SourceSafe
  2. SET SSDIR=<path to folder containing srcsafe.ini>
  3. ss Status $/ -R -U<username> > checked-out-by-username.txt

And then check the contents of checked-out-by-username.txt for your check-outs.

For example:

My srcsafe.ini was in C:\Program Files\Microsoft Visual SourceSafe\MasterDatabase. And my username was bpaetzke.

So, my command line looked like this:

  1. cd C:\Program Files\Microsoft Visual SourceSafe
  2. SET SSDIR=MasterDatabase
  3. ss Status $/ -R -Ubpaetzke > checked-out-by-bpaetzke.txt

If you want to get all users' check-outs, remove the -U and give the output file a generic name.

Other command line info:

  • commands
  • options


回答3:

I came here looking for the same thing but with Visual Source Safe version >= 8.0, the command doesn't seem to work for me, instead I found an easier way to search using menu:

View -> Search -> Status Search

There select the option to search by user and specify the user name



回答4:

See here for the command line usage of Status command. The command

ss.exe Status $/ -R -U

shows every file in the system that is checked out by the current user.