Hello,
I have several large projects that are not in SourceSafe. I'm trying to find an efficient way to put all my files (and the dir tree they live in) in to Vault.
Currently, I'm trying to use a batch file that writes a list of files to a file, then calls
vault.exe" BATCH -user Admin -password admin -host xx.xx.xxx.xxx -repository King cmds.txt
This is still very slow; sometimes my batch file doesn't return from the command "Vault.exe BATCH .. " command.
cmds.txt looks like:
add $/Work/ObjectDoc/dev Obj1.cpp
add $/Work/ObjectDoc/dev Obj1.h
commit
Of course, if I've already added a file, then the whole operation fails.
Is there a way to get a list of files that aren't in Vault, and add them?
What is the most efficient way to get a large directory tree into Vault?
Thanks for your suggestions.
Adding non-VSS files to Vault
Moderator: SourceGear
The Add Dialog, despite its many faults, is very good at adding an entire folder of files in one shot. Just click on the folder you want added (within the Add Dialog), press the Add button in the dialog.
What it won't do (right now), is exclude certain files wiithin the folder. It is basically an all or nothing operation, so what we recommend is to create a folder on disk of files exactly as you want them in Vault, and then add that folder to Vault.
What it won't do (right now), is exclude certain files wiithin the folder. It is basically an all or nothing operation, so what we recommend is to create a folder on disk of files exactly as you want them in Vault, and then add that folder to Vault.
Thanks, Dan, I was looking at the Add dialog. Unfortunately, w/o filters, it's not much use.
I'm not sure I understand this:
Work\Proj1\Dev\
----------Debug\
----------Release\
with sources in Dev, and binary things in Debug and Release, how can I implement your suggestion? Copy everything in Dev to another folder and add that to Vault, somehow keeping the working dir for the files where they currently exist?
Or is this a multi-step copy operation, along the lines of: copy everything to go in to Vault to a new dir, rename the old dir, rename the new dir to the original name (so config files and makefiles all work), add the files, finish by copying other files that are needed but don't go in to Vault, and rebuild everything.
That seems very cumbersome...
I'm not sure I understand this:
If I havewhat we recommend is to create a folder on disk of files exactly as you want them in Vault, and then add that folder to Vault.
Work\Proj1\Dev\
----------Debug\
----------Release\
with sources in Dev, and binary things in Debug and Release, how can I implement your suggestion? Copy everything in Dev to another folder and add that to Vault, somehow keeping the working dir for the files where they currently exist?
Or is this a multi-step copy operation, along the lines of: copy everything to go in to Vault to a new dir, rename the old dir, rename the new dir to the original name (so config files and makefiles all work), add the files, finish by copying other files that are needed but don't go in to Vault, and rebuild everything.
That seems very cumbersome...
I guess the assumption is that everything you need to build would be put in Vault, so that others can merely do a Get and be able to build the project (there wouldn't be any files that you'd need to copy over to make it build, but wouldn't be in Vault).
So, you'd want to copy everything over to a new folder, then remove all intermediate and user-specific files, then add it all to Vault, then do a Get to a fresh working folder to ensure you have everything needed in Vault to build.
Yes, this is tedious, because you do lose your working folder in doing so. And it is more tedious if you have absolute paths in your makefiles, since you have to rename folders to get it to work right.
So, you'd want to copy everything over to a new folder, then remove all intermediate and user-specific files, then add it all to Vault, then do a Get to a fresh working folder to ensure you have everything needed in Vault to build.
Yes, this is tedious, because you do lose your working folder in doing so. And it is more tedious if you have absolute paths in your makefiles, since you have to rename folders to get it to work right.