Chapter 1



Vault Overview

SourceGear Vault is a version control system built on SQL Server that provides both VSS style (Check Out, Edit, Check In) and CVS style (Edit, Merge, Commit) source control capabilities. Created by the makers of SourceOffSite, Vault is a compelling replacement for SourceSafe and other version control tools.

Advantages of Vault include:

Reliable

Vault's design places a strong emphasis on the integrity of the repository. The Vault repository is stored using Microsoft SQL Server 2000. Furthermore, Vault supports atomic check in transactions (change sets). When checking in a collection of files, the entire check in either succeeds or fails as an atomic unit.

Seamless transition from SourceSafe

A simple-to-use tool is provided to convert any SourceSafe database, including history information, to Vault repositories.

Familiar features and interface

SourceSafe users will feel comfortable using Vault. The client user interface very closely resemble that of SourceSafe and SourceOffSite – all major features of SourceSafe are present.

.NET Architecture

Vault is built entirely on Microsoft's .NET platform, including C#, IIS and SQL Server 2000.

Open

The Vault server is built as a collection of .NET Web Services. The API provided by these services is fully available. Using the API documentation and commonly available tools, the Vault architecture allows clients to be created for any platform.

International

SourceSafe was created years before Unicode became the prevalent technology for I18N. Vault's design is thoroughly Unicode, largely because of its use of the .NET Framework. Vault is also localization-ready.

Concurrent Development

Vault's support for branching, automatic merging and multiple checkouts is superior to that of SourceSafe, even as the interface and paradigm are familiar to SourceSafe users.

History Explorer

The use of SQL Server as a repository storage allows Vault to easily provide more advanced ways of querying the history of a project.

Tips for SourceSafe Users

Vault has been designed to make a seamless transition from SourceSafe and, at the same time, add many improvements. This has resulted in the following differences.

History Explorer Window

The History dialog box is replaced by a top-level, non-modal window that allows browsing the repository history through queries. It also does not include a destructive rollback function except in the Admin Tool.

Branch exists separately from Share.

In SourceSafe, Branch can only be performed after a Share operation, but Vault allows a Branch operation to happen by itself. The functionality is equivalent.

Atomic Check Ins and Check Outs

Add and Delete operations can be scheduled to happen as part of the next check in. Options exist that allow you to specify whether the operations happen immediately, or whether they are included with the next transaction.

SQL Server database

Vault’s repository is stored in SQL Server rather than a collection of files in an undocumented format.

Request Exclusive Lock

In lieu of Allow Multiple Checkouts, Vault has Request Exclusive Lock. The sense of the option is reversed and the default is to not request exclusive locks on files which are considered to be mergeable.

Terms

We have changed the following terms:

• In Vault, “Repository” (SourceSafe -- “Database”) refers to the place where source control files and history are stored.

• In Vault, “Folder” (SourceSafe -- “Project”) refers to folders in the repository.

Menu Items

The following menu items are no longer used:

• The File / Create Shortcut

• The Edit / Select

• The Web / Check Hyperlinks

• The Web / Create Sitemap.

• Reports (In SourceSafe, these features serve the same purpose as Print commands.)

Show Differences Feature

• Vault only supports the “visual” diff, not “SourceSafe”, not “UNIX”.

• Vault does not include the option to Ignore OS Differences because Vault’s diff code already ignores OS differences.

Miscellaneous Differences

• The Options dialog has no pane for Command Line Options.

• Check In and Check Out only function from and to the working folder.

• Vault does not always require files to be explicitly checked out before editing and checking in. Vault may be configured to create working copies without the read-only bit set.

• The Delete command does not include Destroy Permanently. This functionality is present in the Admin Tool where it is called Obliterate.

• The Label command functions rather differently in its presentation although the concept and application is the same. A label is presented to you as a Virtual Folder and can be viewed in the folder tree based on an option setting.

• Vault does not have a built-in text editor.

• There is no option to force MS-DOS compatible filenames.

• The Store Only Latest Version feature is not supported. In SourceSafe, it appeared in the File Properties dialog box.

• The Get Latest Version command is used to retrieve changes from the repository into the working copies, including any merge or conflict resolution. A file may not be checked in to the repository unless all changes from the server have been merged into the working copy using the Get Latest Version command.

• Vault makes use of a hidden state folder (named _sgvault) located in the local file system. These state folders keep track of the current version of files downloaded by the client and also store baseline versions of files for later merges. By default the state folders are kept in a user's application data folder, but a general option can be set to keep the state folders in the current working folders.

• All access to the Vault repository occurs through the Vault server. There is no “local-mode client” to manipulate the repository through the file system.

Documentation

The following list of documentation is available both in printable version and on-line. We have also provided help and tips within the application.

• User’s Guide

• Administrator Guide

• SourceSafe Import Tool Guide

• Command Line Client Help, available by typing “Vault.exe help” from a command line

Also available,

• FAQ support on our website

• Technical support via email (vault-support@)

We would like to make this the best source code control tool available. Your input is valuable to us. Please, do not hesitate to contact us with problems or suggestions.

Installation

The Admin Tool is installed with the server and can be run from any machine with access to the Vault server.

The default Admin group and Admin user are created when the tool is installed. A user must be a part of the Admin group to access the Admin Tool.

Hardware Requirements

Both server and client requires Windows 2000 (SP3) and above for OS.

The .Net Framework is required. For information on the system requirements and installation, please refer to Microsoft.

Server Hardware Requirements

• Server class machine with 512MB RAM.

• Disk space requirements dependent on size of source code tree.

Client Hardware Requirements

• Client machine capable of running .Net apps.

Software Requirements

Both server and client requires Windows 2000 (SP3) and above for OS.

The .Net Framework is required. For information on the system requirements and installation, please refer to Microsoft.

Server Software Requirements

• SQL Server 2000 and above; OR, MSDE 2000 and above

• IIS 5 or above with

• .Net Framework 1.1

Client Software Requirements

• .Net Framework 1.1

Installation

Instructions for installing Vault are available at the SourceGear support website at

Uninstall

To Uninstall any of the Vault applications, go to the control panel of the computer and select Add/Remove Programs. Select the Vault program you wish to uninstall from that list and uninstall.

Security

Authentication

Authentication is how a user gains access to the Vault repository.

Security Access

Security access rights refer to the user’s ability to view, modify and delete files and folders within a Vault tree. Access rights can be set for an entire repository or individually on each folder within a repository for any user. However, access rights cannot be set on individual files.

In addition, groups can be defined that have security access rights by folder. Please see Group Rights for more details.

When a new user is added, the user has full access to all repositories in the Vault server.

Access rights can be turned off entirely to increase performance since checks to the database do not need to be made. This is the default setting.

Security rights can be set in one the following ways:

• Repository-Level Access

You can deny a user access to an entire repository, which does not allow them to choose that repository when logging in.

• Rights by Folder

Setting the access rights by folder gives you an overall view of the repository and all the access rights. For more information, please see Folder Security tab in the Admin Tool.

• Assignments for User

Setting the access rights by user gives you an overall view of each user and their access rights. For more information, please see the Users tab in the Admin Tool.

• Assignments for Groups

Setting the access rights by groups allows you to easily assign access rights to users that applies to all repositories within a vault server. For more information, please see Group Rights and the Groups tab in the Admin Tool.

• Copy User Rights

Setting the access rights by copying user rights allows you to copy the rights created for one user to those of another. For more information, please see Copy Rights Assignments.

Authentication

Authentication is how a user gains access to the Vault repository. Each user who accesses Vault must have (or be assigned) a Vault user account. However, the password required to access Vault can either be the one stored in Vault, or one specified by an Active Directory domain account. Active Directory authentication allows the user to change her password in one place and have it apply to both the domain account as well as the Vault account.

• Vault Authentication. When authenticating against the Vault password, merely define the user in the Add/Edit User dialog and provide a password. The user will use that password when logging into Vault

• Active Directory Authentication. When authenticating against Active Directory, two steps are required:

1. Provide the domain against which you will search for an account of the same name. This is done in the Admin Tool Server Options screen, in the “Active Directory Domain for Authentication” field.

2. Once a domain is specified, a checkbox in the Add/Edit User dialog will become active allowing you to require the user to authenticate against their domain account. Note that the domain account needs to have the same name as the Vault user account.

Administrators

The Admin user and users in the Admin Group are the only users that can open the Admin Tool.

When the Vault server is installed, a pre-defined user named Admin and a pre-defined group named Admin are created. You will be asked to create and confirm a password for the Vault Admin. It is strongly recommended you do this for security reasons.

Neither the Admin nor the Admin Group can have their rights or permissions changed. However, a member of the Admin Group can have their rights restricted to a specific folder. Admin Group does not override an individual’s assignment at a given folder. This allows a user to be part of an IT group without giving them the rights to modify files in a given project.

Repository Access

A user can be denied access to an entire repository within a Server. When denied, the repository is not among the repositories the user can select after logging into a server.

You can deny the user access to a repository by:

• Using the Properties dialog for the Repository Pane, and selecting the user to deny access for that repository.

• Using the Security dialog from the User Pane, and selecting the repository to deny access for that user.

Access Rights

Following are the four Access Rights and their description. Note that Obliterate is only available through the Admin Tool and therefore not a security right on a folder, but a permission granted to users of the Admin Group.

When a security access right is applied to a folder, it recursively applies those rights to all subfolders. User access rights that are closest to the folder being checked take precedence over access rights assignments that are farther away. For example, if $/foo/bar/xyz is being checked for rights, a user access right assigned at $/foo/bar takes precedence over a user access right assigned at $/foo.

|Right |Description |Commands allowed |

|No Rights |No access at all – cannot view |None |

| |files or subfolders. | |

|Read (R) |Read-only access to folder and |View |

| |its files. |Get |

| | |Cloak |

|Check Out / Check In(C) |Access to modify the contents of |Modify files |

| |files, but not to change the |Check Out |

| |structure or properties of the |Check In |

| |folder. |Undo Check Out |

|Add / Rename / Delete (A) |Full access to the folder. |Modify the file list |

| | |Add |

| | |Delete/Undelete Label |

| | |Rename |

| | |Move |

| | |Branch |

| | |Share |

| | |Pin |

Group Rights

Groups can be defined as an easy way to set access rights for multiple users. Groups can have individual folder rights but do not have default rights. A user can belong to multiple groups as well as have individual folder rights.

If only group access rights exist, the most permissive group takes precedence. For example, if Group A allows R C at root and Group B allows R at $/foo/bar, then group A’s access rights take precedence at $/foo/bar.

However, a single group’s access rights can be restricted by multiple rights assignments. For example, if Group A has R C A at root AND R at $/foo/bar and Group B has RC at $/foo/bar, it is Group B’s RC that takes precedence, because Group A’s R rights permission overrides its RCA at $/foo/bar. As the example shows, a group’s rights assignment closest to the folder in question take precedence over other rights assignments of that group further away.

User vs Group Rights

• User access rights always take precedence over group access rights regardless of where in the tree the group rights are applied. For example, a user access right at root takes precedence over a group access right on the folder itself.

• Inherited group access rights take precedence over user default access rights. The only time default rights are used is when there are no rights assignments at all for a user or any groups they belong to from root down to the folder in question.

Admin Tool

The main window of the Admin Tool organizes the settings and options on ten tabs. Only the Admin or users defined in the Admin Group can login to the Admin Tool.

The default Admin user is set up during installation and is given full access to all admin options. There are no restrictions based on user name. Any other user can have admin access by a putting them in the Admin Group on the Groups tab.

The user can manage one server at a time and any number of repositories within that server.

Repositories

The Repositories tab allows the user to add, delete and view/edit properties of the repositories on the Vault server. It contains a list of all repositories in the Vault server.

A repository is any logical grouping of files. You can create any number of repositories per server, and all the users and groups defined for the user will apply to all repositories. However, files cannot be shared or branched across repositories.

The list is sorted alphabetically in ascending order.

Add

Add allows you to add new repositories to the database. When clicked, the Add New Repository dialog box is made available.

Delete

You can delete a selected repository by clicking Delete. Two successive warning messages will appear before actually deleting the repository.

Always make absolutely sure you will not want access to the files in the repository before deleting it. Deleting a repository destroys all files and all history related to that repository and is not recoverable.

Properties

Click Properties to view the Repository Properties dialog box for the selected repository. You can enable or disable folder security for the entire repository from this dialog box.

The Name of the repository and the Enable Folder Security option can be changed. The property page also includes the following information:

• the number of folders

• the number of files

• the tree size

• the database size

Groups

The Groups tab allows the user to manage Vault groups. A group is a default way to assign access rights to users and applies to all repositories within a vault server. See the Access Rights section for more information.

Groups

The Groups box contains a list of all defined groups in the vault server.

The list can be sorted by clicking the column heading. When the list has been sorted, an arrow will appear indicating ascending or descending order. Click the arrow on the sorted column to reverse the sort. The default sort is alphabetically on the name column.

The columns in this list are:

• Name – The name of the groups.

• Description – A short description of the group.

Add Group

Add Group allows you add a new group to the Vault server and assign users to it. When clicked, the Add Group dialog box is made available.

Edit Group

Edit Group allows you to edit the users assigned to the selected group. When clicked, the Edit Group dialog box for the selected group is made available.

Delete Group

Delete Groups will delete the selected group. Deleting a group deletes all the folder permissions that were set for that group. No users are removed.

Please Note: The Admin Group cannot be deleted.

Security Rights

Security Rights allows you to view and modify security rights for a group for specific folders within repositories. See the Security Access Rights section for more information on folder access rights

When clicked, the Group Security Rights dialog box for the selected group is made available.

Users

The Users tab allows you to manage Vault users for all repositories within a vault server.

Please Note: In order to preserve historical information, you cannot delete users from Vault. However, you can make any user inactive.

Users

The Users box contains a list of all users.

The list can be sorted by clicking the column heading. When the list has been sorted, an arrow will appear indicating ascending or descending order. Click the arrow on the sorted column to reverse the sort. The default sort is alphabetically on the User column.

The columns in this list are:

• User – The name of the user.

• Default Rights – The default rights for all repositories.

• Status – Displays Logged In if the user is currently logged in and Inactive if the user is currently inactive.

Add User

Add User allows you to add users. When clicked and there is a license available, the Add User dialog box will appear.

You can only add as many active users as you have licenses. Check the License tab to see how many licenses you have available. You will get an error message if you attempt to add or activate more users than you have available licenses.

To make a user inactive, click Edit User.

Edit User

Edit User allows you to edit the properties for the selected user. When clicked, the Edit User dialog box for the selected user is made available.

The user’s password, default rights and assigned groups can be changed. Also, the user can be made active or inactive.

Security Rights

Security Rights allows you to view and modify security rights for a user for specific folders within repositories. See the Security Access Rights section for more information on folder access rights.

Click Security Rights to bring up the User Security Rights dialog box on the selected user.

Copy Rights

Copy Rights allows you to copy the rights created for one user to those of another by making the Copy Rights Assignments dialog box available.

Groups

You have an option to view only users in a selected group. In the Group box, type or select the group whose users you want to see.

List Only Active Users

This option determines whether the user list contains all users, or only users that are currently marked as active.

Folder Security

The Folder Security tab allows you to view and edit the folder security settings for any folder in any repository.

Repository

The Repository box is a list of user-defined repositories with folder security enabled. Repositories that do not have security enabled will not appear in the dropdown list. To enable the folder security, go to the Repositories tab and click Properties

Type or select the repository you want to see.

Folder Tree

The Folder Tree of the selected repository is displayed. When a folder is selected in the tree, the Rights List is updated to reflect the rights of the selected folder and the Edit Rights checkboxes are updated to reflect the Rights List selection.

Rights List

The Rights List is a list of all users and all groups. The list displays the actual rights for the selected folder for each user and group. The rights for a user or group are determined based on actual rights assignments, inherited rights from a higher level, or default rights. See Access Rights for the rules applied when determining rights at a specific folder.

The list can be sorted by clicking the column heading. When the list has been sorted, an arrow will appear indicating ascending or descending order. Click the arrow on the sorted column to reverse the sort. The default sort is alphabetically on the User column.

The Rights List has the following columns:

• Rights – The rights of the user or group for the selected folder in the Folder Tree.

• User – The name of the user whose rights are shown in this row.

• Group – The name of the group whose rights are shown in this row.

Please Note: If making changes to a group’s folder rights, it is recommended that the group folder rights changes are applied before making folder rights changes for individual users. Users can inherit their rights from a group and changing a group’s rights may affect user rights.

Edit Rights

The Edit Rights box allows you to modify the rights of the user or group selected in the Right List. The values match the selected user or group. The Rights checkboxes can be either:

• Checked – The user or group has a right that was assigned at the folder.

• Intermediate Checked (gray check) – The user or group has the right for that folder inherited from another folder or group (for users), or is the default.

• Unchecked – The user or group has no right at the folder level.

When you have changed one or more of the rights, Apply is enabled. Multiple rights changes can be made to the Rights List for each folder. If you revisit a right after the checkboxes have been changed (even if they haven’t been applied), the checkboxes will reflect the change, although the rights in the Rights List will still reflect the right as current in the database until the change has been applied.

Apply

Click Apply to update the folder rights in the repository with all the rights changes made to the currently selected folder and the Rights List.

Undo Check Out

The Undo Check Out tab allows you to undo any current checkouts in any repository.

Repository

The Repository is a list of all user-defined repositories on the Vault server. Type or select the repository you want to see.

Files currently checked out

The Files currently checked out list contains the files currently checked out in the selected repository, sorted by file name.

The list can be sorted by clicking the column heading. When the list has been sorted, an arrow will appear indicating ascending or descending order. Click the arrow on the sorted column to reverse the sort. The default sort is alphabetically on the User column.

The columns in this list are:

• File Path – The full path and name of the file.

• User(s) – The names of all users who have the file checked out.

• When – The time the file was checked out.

This list is refreshed every time you enter the screen.

Undo Check Out

Click on Undo Check Out to undo the check outs for all selected files. The Files currently checked out list will be updated immediately.

Refresh File List

Click Refresh File List to update the currently checked out files list.

Obliterate

The Obliterate tab is used for obliterating deleted files from the repository.

This permanently erases the contents and history of the file or folder but keeps some meta-information so history entries can show that obliterates happened from their parent folder. Obliterating an item causes the parent folder version to be incremented.

Any item that has been branched cannot be obliterated until its branches are obliterated. A branch maintains links in the database to the trunk for versions prior to the branch point. Therefore, obliterating a trunk would obliterate early versions of the branch, so Vault prevents this from happening. Note that folder labels are considered branches in this context, and all branches ever created from a trunk must be obliterated before obliterating the trunk.

Please Note: Obliterating files and folders is not recommended because they cannot be recovered. This will create gaps in the history. This feature should only be used if you are absolutely sure you will never need these files again.

Repository

The Repository is a list of all user-defined repositories on the Vault server. Type or select the repository you want to see.

Deleted Items

All files and folders that have been deleted from the repository, but not obliterated, are listed. Select any number of files to be obliterated.

Select All

The Selects All button selects all the items in the list.

Select None

The Select None button clears all the items in the list.

Obliterate

When Obliterate is clicked, the selected items will be obliterated after a series of warnings.

Repository Options

This Repository Options tab allows you to manage options specific to repositories (as opposed to general server options, which apply to all repositories).

Repository

The Repository box is a list of user-defined repositories. Type or select a repository.

All Repositories

The All Repositories option will update each of the other controls with common values for all repositories.

If there are conflicts in Require Check In Comments or Require Exclusive Locks, the checkboxes will be filled with a grey checkmark. Checking this will uncheck the value, and checking it again will check the value with a regular checkmark.

If there are conflicts in the Mergable files text box, the text multiple value) will appear. You can overwrite that text with values that will become common across all repositories.

If there are conflicts in the EOL box, a blank option will be displayed. You can choose a valid option.

As with a single repository, only those values that you actually change will update all the repositories with the new values.

Require Check In Comments

When checked, all check ins to the repository must have a check-in comment.

The default is Unchecked.

Require exclusive locks

When checked, two people cannot have the same file checked out at the same time. This will apply to the entire repository.

The default is Unchecked.

Enable keyword expansion

Check the Enable keyword expansion to expand keywords located in files of the specified types when committed to the Vault repository.

When this is checked, keywords are expanded on the client machine during the Add and Check In operations. After the commit has completed, the file in the repository and the client machine will be in expanded form.

If a file containing keywords is checked in and there were no modifications made to the file and the option for checking in unchanged files is set to Undo Checkout, then the undo checkout will occur and the keywords will not be expanded. If the unmodified file is checked in and the option is set to force the check in, then the check in will occur and the keywords will be expanded in the new version of the file in the repository.

Since keywords are expanded upon Add and Check In, a Get or Check Out of a file containing keywords will be no different from a Get or Check Out of a file without keywords.

Following is a list of supported keywords. This list is identical to the list in Visual Source Safe with the addition of UTCDate and UTCModtime.

|Type this keyword |To add the following |

|$Archive: $ |Vault archive file location |

|$Author: $ |User who last changed the file |

|$Date: $ |Date and time of last check in |

|$Header: $ |Logfile, Revision, Date, Author |

|$History: $ |File history |

|$JustDate: $ |Date, without the time addendum. |

|$Log: $ |File history, RCS format |

|$Logfile: $ |Same as Archive |

|$Modtime: $ |Date and time of last modification |

|$Revision: $ |Vault version number |

|$UTCDate: $ |Same as Date, but time is given in UTC |

|$UTCModtime: $ |Same as Modtime, but time is given in UTC |

|$Workfile: $ |File name |

|$NoKeywords: $ |No keyword expansion for all keywords that|

| |follow |

Keywords are case-sensitive and must not include any blank space between the first dollar sign and the colon. Blank space and/or arbitrary text can be included between the colon and the trailing dollar sign.

• History Keywords – The History and Log keywords expand to the file’s current repository path. They result in additional lines being inserted in the file on the line following the keyword. These inserted lines are subsequently treated as text, so no further expansion or changes will occur in them (unless they, in turn, contain keywords).

You can specify optional start and end strings to be placed before and after the inserted lines. For example, “.c” files could be configured to place /* and */ around inserted lines to make them comments.

• HTML Keywords – Two dollar signs can be placed in front of a keyword to specify that it should be formatted as HTML. For example:

$$Author: $

will expand to

$$Author: -->FredFred

Note that this does not apply to history lines inserted into a file.

• Expanding Keywords – When a keyword is expanded, the new information is placed between the colon and the trailing dollar sign. Any existing text is replaced. For example:

$Author: this is some text $

will expand to (assuming Fred was the last person to change the file)

$Author: Fred $

• Preserving Spacing – Blank space can be preserved inside a keyword by using two colons. For example:

$Author:: $

will expand to

$Author:: Fred $

Note that this does not apply to history lines inserted into a file.

• Time Formats – Dates and times are presented in ISO 8601 format. Time zones are always included, but can be displayed as a number offset ("-06:00" for CST) or "Z" (for UTC time). All times are in 24-hour format, so the AM/PM designator is no longer present.

An example in non-UTC format:

2003-06-30 13:25:57-06:00

An example in UTC format:

2003-06-30 19:25:57Z

The default is Unchecked.

Keyword file types

The Keyword file types box lists the file types, by extension, for which keyword expansion is enabled. Keywords located inside of files having one of the configured extensions will be expanded when committed to the repository as long as the Enable keyword expansion is checked.

• Add – Click Add to bring up the Add Keyword box and specify a file extension to be added to the list for Keyword file types.

• Edit – Click Edit to bring up the Edit Keyword box and modify the selected file extension.

• Remove – Click Remove to remove the selected file extension from the list.

Bug Tracking Application

The Bug Tracking Application allows you to select a bug tracking tool to integrate with this repository. Integrating a bug tracking tool allows users to associate bugs in their bug tracking tool with Vault checkins.

Bug Tracking Integration URL

The Bug Tracking Integration URL box is for entering the URL of the specific bug tracking tool you want to integrate with.

For Vault Dragnet, enter a URL of the form:



If you are using FogBUGZ, enter a URL of the form:



Check the Require Bug ID for Checkins checkbox to require users to enter a bug ID during checkins. If Require Bug ID is enabled, users will be forced to enter a bug ID when committing an added or modified file.

Mergeable files

The Mergeable Files box lists the file types that can be merged and therefore can be changed by two users at the same time.

Changing a file type in this list updates the properties for all files of that type to reflect the values in the list.

For example, if you add a file type of .foo to the list, all existing files of type .foo are updated to be mergeable. If .foo is deleted from the list, all files of type foo will no longer be mergeable. File types that were not changed are not affected.

Removing all mergeable file types from the list for a repository will reset the default values.

File Exclusions

The File Exclusions box lists file name patterns that should not be included by default when adding a folder to Vault.

Changing a file pattern in this list updates the file exclusion list in all clients.

Folder Exclusions

The Folder Exclusions box lists folder name patterns that should not be included by default when adding a folder to Vault. The folder pattern applies to any recursive subfolder of the folder you are attempting to add.

Changing a folder pattern in this list updates the folder exclusion list in all clients.

EOL Conversion

The EOL Conversion allows you to select the EOL to be applied to mergeable files only. The list includes:

• None

• Native

• Windows CRLF

• Unix LF

• Mac CR

Note that this does not change existing files in the database. It only affects new files that are added to Vault.

The default EOL type for mergeable files is Native and for binary files is None.

Configure Shadow Folders

The Configure Shadow Folders button brings up the Configure Shadow Folders dialog for the repository listed.

Apply

Click Apply to update the repository options.

If you select a different repository or tab or close the application when changes have been made but not applied, a dialog box is displayed asking if you want to apply the changes. Click Yes to apply the changes. Click No to reset the options to their original values.

Server Options

This Server Options tab allows you to manage server options.

Working Directory

The Working Directory displays the path to the directory on the server machine where Vault stores temporary files during its processing of commands.

To change the path, click Set Working Directory and type in new path.

Vault Session Timeout

Set the Vault Session Timeout, in minutes, for when a Vault client’s IIS session will timeout.

The default is 4320 minutes (72 hours).

IIS File Upload Limit (bytes)

The IIS File Upload Limit determines how large a single file can be while adding it to Vault. The size, in bytes, of the file upload limit in IIS is displayed.

Active Directory Domain for Authentication

The Active Directory Domain box determines whether users are able to authenticate their logins against activity directory accounts of the same name as their Vault account. When users authenticate against Active Directory, their domain password must be entered instead of the Vault password when logging into Vault.

The domain name of the Active Directory domain must be entered here to enable the feature.

Database Buffer Size

In the Database Buffer Size box, type the buffer size to use when transferring files.

The default is 768.

Login Delay Threshold

In the Login Delay Threshold box, type the number of login attempts a user can make before there will be a delay in allowing that user to attempt another login. This refers to consecutive login attempts without a successful login from the same location.

The default is 10.

Login Delay Timeout

In the Login Delay Timeout box, type the number of seconds a user must wait before they can attempt another login if they have failed to login by the number specified in the Login Delay Threshold box.

The default is 30.

Logging

Path to Log File

The Path to Log File displays the path to the server log file. The log file name is vaultlog.txt and will be placed in the log file path.

To change the path, click Set Log Directory and type in new path.

Log Level

Set the Log Level for output desired. The options are:

• Quiet

Connections information: user logging in and out, from where and with what type of connections

Server configuration information: release number and server option settings

All error messages

• Debug

Everything in Quiet

All web method calls, their results and if the method operates on multiple items

Information on the success or failure of each item as it is processed

The default is Quiet

Overwrite on startup

If checked, Overwrite on startup will overwrite the log file when the server is restarted.

The default is Unchecked.

Use Reverse DNS Checkbox

Check Use Reverse DNS to use reverse DNS to look up the machine name of the client when logging in.

The default is Checked.

Email Settings

The Email Settings button brings up the Email Settings dialog for the repository listed.

Apply

Click Apply to update the repository options.

Please Note: After a successful save of any of the options except the session timeout and the IIS upload limit, IIS must be restarted for changes to take effect.

If either session timeout or IIS upload limit is changed, IIS immediately restarts and the current session is no longer valid.

Back Up

The Backup tab allows the user to backup and restore the entire Vault database. Since Vault uses SQL Server’s backup tool, this is merely an interface to manually create backups of the Vault database. To automatically backup your Vault database via a script, consult SQL Server’s backup documentation.

Vault backup files are placed in SQL Server’s defined location for backup files.

Backup Database

Backup File Name (*.sgvbak)

In the Backup File Name box, type the name of the backup file. The input name must be a valid file name. Vault will automatically append “.sgvbak” to the file name.

Backup Now

Click Backup Now to start the backup.

To cancel the backup, click Cancel. The backup will be canceled and any temporary files will be cleaned up.

Restore Database

Backup List

The Backup List box is a list of all files in the server backup directory that are Vault backup files. The date and time of the file are also listed.

Restore

Click Restore to restore the selected file on the server. All users must be logged off. If there are other users logged in and the Vault server is unable to lock the database, an error message will appear and the restore will be cancelled.

When you restore a backup, it will completely overwrite all the data in the Vault database in all repositories

You must provide the SQL Server password in order to restore the database.

Delete

Click Delete to delete the selected backup entry from the list.

Please Note: This does not delete the backup file itself from the SQL machine. You must remove these files if you want to reclaim disk space.

License

The License tab allows you to enter serial numbers into the installed server, and view information about the current number of licensed users.

Serial Numbers List

The Licenses List is a list of the serial number associated with the license. The list includes:

• Count – The number of licenses associated with the serial number.

• Expires – The date on which this serial number expires if it is a demo or permanent if it is a full license.

• Serial – The serial number.

Add

Click Add to bring up the Add Serial Number dialog box to add serial numbers. Paste the serial number received from SourceGear into the text box.

Click OK to enter the number. The serial number will immediately be included in the serial number list.

Delete

Click Delete to delete the selected serial number.

View License Number

Click View License to bring up the selected serial number in a dialog box that allows you to copy the number.

Old

Displays old serial numbers from pre 3.0 servers.

Total Permanent Licenses

The Total Permanent Licenses displays how many licenses there are among all the activated serial numbers. It does not list demo or temporary licenses.

Number of current active users

The Number of current active users displays the active users that are currently defined in Vault.

Bug Tracking Integration

To enable bug tracking integration between Vault and a bug tracking tool, you must configure both the bug tracking tool and Vault to recognize each other.

Dragnet Configuration

In order to setup Dragnet to recognize Vault, go to the Setup screen in Dragnet (you must be administrator to do so). The Setup screen can be accessed from the links on the right of the main page.

In the setup screen, choose “Vault” as the Source Code Control Provider”, and then provide the URL for the Vault server in the form of:

http://[vaultserver]/VaultService

Check the Require Bug ID for Checkins checkbox to require users to enter a bug ID during checkins. If Require Bug ID is enabled, users will be forced to enter a bug ID when committing an added or modified file.

FogBUGZ Configuration

To enable History, after installing FogBUGZ, logon as the administrator. Go to the Site Configuration page. In the text box SourceControl URL for logs, type the following case-sensitive URL:

^FILE

To enable Diff, In the text box Source Control URL for diffs, enter the case-sensitive URL for the Vault history page, using the following format:

VaultDiff.aspx?File=^FILE&Object=^R1&Version=^R2

To enable bug tracking, you must have Vault admin privileges and access to the Vault Admin Tool.

Check the Require Bug ID for Checkins checkbox to require users to enter a bug ID during checkins. If Require Bug ID is enabled, users will be forced to enter a bug ID when committing an added or modified file.

Vault Configuration

In order to setup Vault to recognize the bug tracking system, do the following:

Logon to the Vault Admin Tool and go to the Repository Options tab. Fill in the Bug Tracking Application box with the appropriate bug tracking tool.

In the Bug Tracking Integration URL box, type in the location of the Dragnet or FogBUGZ server, such as



or



Reference Guide

Dialog Boxes

Add Assignment

Add Assignment allows you to add a security rights assignment for a group or user to a specific folder in a repository. See Security Access Rights for more information on folder access rights.

Rights can only be assigned by folder if the security rights are enabled for the repository (go to the Repositories tab and click Properties to enable).

To open this dialog box, go to the Users tab, select a user and click on Security Rights, then click on Add Assignments. Or, go to the Groups tab, select a group and click on Security Rights, then click on Add Assignments.

Repository

Repository is a list of all repositories that have folder security enabled. Type or select the repository you want to be displayed in the Folder Tree.

Folder Tree

The Folder Tree of the selected repository is displayed. When a folder is selected in the tree, the Assign Rights checkboxes are updated to reflect the rights of the selected folder.

Assign Rights

The Assign Rights checkbox allows you to modify the rights of the user or group.

The Rights checkboxes can be either:

• Checked – The user or group has a right that was assigned at the selected folder level in the tree.

• Intermediate Checked (gray check) – The user or group has a right that was inherited from another folder or group (for uses) or default. The right was not assigned at the selected folder level.

• Unchecked – The user or group has no right at the folder level.

Select the rights to assign to the selected folder. You can assign rights to a folder, then select another folder to assign rights. However, assigning these rights does not update the database until the user clicks OK.

OK

Click OK to add the assigned rights to the selected folders. The new assignments will overwrite any assignments that already exist for the selected folder.

Close

Click Close to exits the Add Assignment dialog box and return to previous screen.

Add/Edit File Extension

The Add Keyword dialog box allows you to add a new keyword file type or edit an existing keyword file type.

If you are adding a keyword file type, the dialog box will appear Add Keyword. If you are editing a keyword file type, the dialog box will appear Edit keyword.

To open this dialog box, go to the Repository Options tab. Click Add next to the Keyword file types box or select a keyword in the box and click on Edit.

File Extension

Type the file extension to be configured for keyword expansion in the File Extension box. Do not use an asterisk. The file extension is limited to nine characters.

When editing a file extension, you are not allowed to modify this string.

Start of History line

Type the string that will be placed in front of any lines of text that are inserted into a file for the History keyword. This string is limited to 25 characters.

End of History line

Type the string that will be placed after any lines of text that are inserted into a file for the History keyword. This string is limited to 25 characters.

OK

Click OK to add the new keyword file extension or apply the edits to the selected file extension.

Cancel

Click Cancel to exit the dialog box and no changes will be made.

Add/Edit Group

The Add/Edit Group dialog box allows you to add a new group, edit an existing group, or assign users to the group.

If you are adding a group, the dialog box will appear as Add Group. If you are editing a group, the dialog box will appear as Edit Group.

To open this dialog box, go to the Groups tab and click on Add Group. Or, select a group and click on Edit Group.

Group Name

Type the name of the group to be added in the Group Name box. If you are editing a group, the name will already be visible.

The Admin Group name cannot be edited. Groups names can be any alphanumeric character, plus dash and underscore.

Description

In the Description box, type a short description of the group or edit the existing description. The Admin group description cannot be edited.

The description for a group is optional.

Assign users to group

The Assign Users to Group box allows you to select the users for the selected group.

Unassigned users list

The left box in the Assign users to group box is an alphabetic list of all users who are currently not assigned to the selected group.

Select the user to be assigned to the group. Multiple users can be selected by holding the Control key and selecting the users. Double click a user will move it to the Users assigned to this group.

Users assigned to the group

The right box in the Assign users to group box is an alphabetic list of all users who are currently assigned to the selected group.

Select the user to be removed from the group. Multiple users may be selected by holding the Control key and selecting the users. Double click a user will move it to the Unassigned users list.

Use the arrows to move users into or out of the group. The double arrows move all users in or out of the group.

OK

Click OK to add the new group or apply the edits to the group.

Cancel

Click Cancel to exit the dialog box. No changes will be made and you will be returned to the Groups tab.

Add New Repository

The Add New Repository dialog box allows you to add a new repository to the vault database.

To open this dialog box, go to the Repositories tab and click Add.

Repository Name

Type the name of the repository into the Repository Name box. Only alphanumeric characters, plus dash, underscore and blanks are valid.

Enable Folder Security

Check the Enables Folder Security box to be able to assign user’s security rights by folder.

The default is Unchecked.

OK

Click OK to add the new repository to the database.

If the repository is successfully added to the database, you will be returned to the Repositories tab with an updated repositories list.

Cancel

Click Cancel to return to the Repositories tab. The new repository will not be added.

Add/Edit User

The Add/Edit User dialog box allows you to add a new user, edit an existing user or assign users to the group.

If you are adding a user, the dialog box will appear Add User. If you are editing a user, the dialog box will appear Edit User.

To open this dialog box, go to the Users tab. Click Add User or select a user and click on Edit User.

Please Note: If the user being edited is Admin, the only property that can be edited is the password.

User Name

Type the User Name in the box indicated. If you are editing a user, the selected user name will appear.

When editing the username, you must re-enter or change the password because passwords are tied to usernames in a hashed form when they are stored on the server and the admin tool does not have access to the user’s password.

This name is used as the login and can be any alphanumeric character, plus dash and underscore.

Authenticate using Active Directory

The Authenticate using Active Directory check box determines whether you want this user to use their Active Directory password or their Vault password when logging in.

This checkbox is only enabled if the Active Directory Domain box in the Server Options tab has a value.

Password

Type the Password or edit the selected user’s password. The password can contain any character or nothing (blank passwords are allowed). Verify the password in the box indicated.

Active

The Active checkbox indicates whether the user is active (currently using a license) and therefore allowed to login.

By clearing the Active checkbox, the user can no longer login to the Vault server and a license is freed up.

Please Note: You cannot delete a user. Users can only be Active or Not Active.

Default user rights

In the Default user rights box, check the rights that will apply to the selected user as the default for all repositories on the server.

Editing this does not override any specific rights assignments that have already been added for the user or for any assigned groups. It merely changes the default for future rights assignments and for folders where no assignment has been made or inherited.

Assign groups to user

Unassigned groups

The left box in the Assign groups to user box is an alphabetic list of all groups that are currently not assigned to the selected user.

Select the group to be assigned to the user. Multiple groups may be selected by holding the Control key and selecting the groups. Double clicking a group will move it to the Groups user assigned.

Groups user assigned to

The right box in the Assign groups to user box is an alphabetic list of all groups currently assigned to the selected user.

Select the group to be removed from the user. Multiple groups may be selected by holding the Control key and selecting the groups. Double clicking a group will move it to the Unassigned groups.

Use the arrows to move groups from one box to another. The double arrows move all groups.

Create

Click Create to add a new user or apply edits to an existing user.

Close

Click Close to return to the Users tab. No changes will be made.

Configure Shadow Folders

The Configure Shadow Folders dialog allows you to determine which folders in your repository will be shadowed.

A shadow folder is a local folder that contains the contents of a repository folder, and is kept up-to-date in the shadow folder by the Vault server as changes are applied to repository folder.

A special Shadow Folder Web Service is installed with the Vault server that is notified of changes as they happen, and the Shadow Folder Service keeps the local disk up to date. A shadow folder must be accessible from the machine the Shadow Folder Web Service is located on.

Please Note: The Shadow Folder Web Service is configured to run under the Vault Admin user account. If you change the Admin user’s password, you must do it from the Vault Admin tool, and not from another Vault client. Otherwise, the Shadow Folder configuration data will not get updated to reflect the password change, and Shadow Folders will not be updated until the password is corrected.

Note on UNC paths: If you want to shadow files to a UNC path (e.g, one that you specify as //machinename/folder, rather than one that is local to the Vault server), there are also additional configuration steps required. See a knowledge base article at for more information.

Folder in Repository

The Folder in Repository box contains the folder you want to shadow in the given repository.

The Browse button will bring up a tree of folders in the current repository that you can select to be shadowed.

Shadow Directory Location

The Shadow Directory Location box contains the local directory where the Shadow Folder Web Service will place repository files and keep them up to date.

The Browse button will bring up a local folder chooser that allows you to select a folder.

NOTE: This browse button brings up folders on the machine the Admin Tool is running. If this is a different machine than the Shadow Folder Web Service is on, then a folder selected here will likely be invalid.

Set read-only flag for all files

This checkbox determines the read-write flag for any files that are placed in the shadow folder. If checked, the files will be read-only, otherwise they will be read-write.

Add

Press the Add button to add the repository/shadow folder association to the database, and to begin shadowing the folder.

Shadow Folders

The Shadow Folders list contains all the associations between repository folders and the local folders they are shadowed to.

Delete

Press the Delete button to delete the selected shadow folder association from the Shadow Folders list. Note that this does not delete the files from the disk, but merely deletes the association.

Copy Rights Assignments

The Copy Rights Assignments dialog box allows you to copy the access rights created for one user to those of any other (except Admin).

All group assignments will be copied along with all the folder security rights assigned. This will copy only the current rights – all future changes are not duplicated. After the rights have been copied, you are still able to change rights to specific folders.

This completely overwrites any existing rights the user may have.

To open this dialog box, go to the Users tab and click Copy Rights.

Copy From

The Copy From box contains an alphabetical list of all active users except the user being modified and the Admin.

Copy

Click Copy to assign the rights of the selected user in the Copy From list to the user being modified.

Cancel

Click Cancel to exit the dialog box without making any changes and return to the Users tab.

Email Settings

The Email Settings dialog box allows you to configure how Vault sends email to Vault users.

Users can configure Vault to send them email anytime a change happens in a repository folder (via the Email tab in the Vault GUI client).

SMTP Server

The SMTP Server box contains the server you want Vault to use when sending email to its users.

SMTP Auth User

The SMTP Auth User box contains the user name that is used to login to the SMTP server for authentication, if the SMTP server requires authentication.

Password

The Password box contains the password for the user name that is used to login to the SMTP server for authentication, if the SMTP server requires authentication.

From Address

The From Address box is used to specify the address that will appear in emails sent from the Vault server. It does not need to be a valid email address, but it will be displayed as the user from whom the email was sent.

Server URL

The Server URL box is used to specify the Vault Server that emails will use to link actions to the Vault web interface. For example, when a user checks in a file, a link will be generated in the email message that is sent as part of that check in. The link allows the user to go the Vault web interface that shows more information about the checkin as well as a diff window showing the change that was made.

This should be something like: http://[vaultservermachine]/VaultService

Cancel

Click Cancel to exit the dialog box without making any changes and return to the tab.

Group Security Rights

The Group Security Rights dialog box allows you to view and modify security rights for a group. See Security Access Rights for more information on folder access rights.

To open this dialog box, go to the Groups tab, select a group, then click on Security Rights.

Security Rights List

The Security Rights Lists contains all the security rights that have been applied to specific folders defined for the group.

The list can be sorted by clicking the column heading. When the list has been sorted, an arrow will appear indicating ascending or descending order. Click the arrow on the sorted column to reverse the sort.

The default sort is alphabetically on the Repository, then Folder column.

The list contains the following information.

• Rights – The access security rights assigned to the group for the folder. The access rights can be one or more of “R C A” (Read, Checkin, Add). This only lists actual access rights assignments and not access rights assignments that are automatically applied recursively to sub-folders.

• Repository – The name of the repository of the assignment.

• Folder – The full vault path of the folder of the assignment.

Close

Click Close to exit the Security Rights box and return to the Groups tab.

Add Assignment

Click Add Assignment to add security rights assignment to the selected group. The Add Assignment dialog box will open.

Delete Assignment

Click Delete Assignment to delete the selected security rights assignment.

Login

Username

Type your user name. You must be an active Vault user, as defined in the Vault Admin Tool.

Password

Type the password of the user.

Vault Server

Type the name of the Vault server. This is the host name of the server, not a URL.

Use SSL

Check the Use SSL checkbox if you are using Secure Sockets Layer (SSL) for security.

Select Profiles

The Select Profiles area is always disabled when logging in. The Admin Tool always requires that a password be manually entered before allowing the user to continue.

OK

Click OK to login to the Admin Tool. When successful, the main window of the Admin Tool will open.

Cancel

Click Cancel to exit the application without attempting login.

Repository Properties

The Repository Properties dialog box allows you to view information about a repository and change certain repository properties.

To open this dialog box, go to the Repositories tab, click Properties.

Repository Properties Pane

The Repository Properties pane shows the properties below associated with this repository:

Repository Name

The Repository Name box contains the name of the selected repository. The name can be changed by typing the new name in the box.

Enable Folder Security

When checked, Enable Folder Security allows you to set access rights by folder for groups and users.

If a folder’s security is turned off, rights assignments are not deleted. So if a repository’s security is turned off, then on again, it will have the same security rights it had before it was turned off.

The default is Unchecked.

Repository Information

The Repository Information box contains information that cannot be changed.

• Folders – The total number of folders that are in the repository. This includes deleted, but not obliterated, folders.

• Files – The total number of files in the repository. This includes deleted, but not obliterated, files.

• Tree Size – The amount of disk space required on the client to get all the current files in the repository.

• Disk Space Needed – The amount of disk space required to do a Get to a working folder, which is double the tree size since the state folder keeps a baseline copy of each file on the local disk.

• Database Size – The total amount of space that the repository takes up in the database. This is computed based on the size of the files and versions currently stored – it is not the actual disk size of the database.

Repository Access Pane

The Repository Access pane shows which users have access this repository.

User Access

The User Access box contains the name of each user (or only active users in the Active Users checkbox is checked). You can select or deselect users to give or deny access to this repository.

List Only Active Users

The List Only Active Users checkbox determines whether the User Access list contains all users or only active users.

OK

Click OK to save the changes and return to the Repositories tab.

Cancel

Click Cancel to return to the Repositories tab without saving any changes.

User Security Rights

The User Security Rights dialog box allows you to view and modify security rights for a user for specific folders. See Security Access Rights for more information.

To open this dialog box, go to the Users tab, select a user, then click on Security Rights.

Default User Rights

The Default User Rights box shows the default user security rights. Modifying these checkboxes will update the defaults on the server immediately (without having to close the Default User Rights box first), so they will be available if the user adds a new assignment from here.

Repository Access

The Repository Access box shows which repositories the user has access to. The user has access to repositories that are checked, and does not have access to repositories that are unchecked.

Security Rights List

The Security Rights List contains all the folders that have defined security rights for the user and any group the user belongs to. This lists actual assignments and not folders where only inherited rights exist. By default, the list is sorted alphabetically by repository, then folder. The list contains the following columns:

• Rights – The access rights assigned to the group for the folder. One or more of “R C A” (Read, Checkin, Add).

• Repository – The name of the repository of the assignment.

• Folder – The full vault path of the folder of the assignment.

• Inherited From Group – The group the assignment came from. This is blank for user rights assignments.

Close

Click Close to exit the Security Rights box and return to the Users tab.

Add Assignment

Click Add Assignments to add a security rights assignment to the selected user. The Add Assignment dialog box will open.

Delete Assignment

Click Delete Assignment to delete the selected security rights assignment. You can only delete rights assigned specifically to the user. You cannot delete inherited group rights. When clicked the assignment is deleted and you are returned to the User Security Rights dialog box.

Command Rights

The following is a list of user commands and the required rights to execute them.

• R – Read

• C – Check out/Check in

• A – Add/Rename/Delete

|Command |R |C |A |

|Add Files |X |X |X |

|Branch |X |X |X |

|Check In |X |X | |

|Check Out |X |X | |

|Cloak | | | |

|Create Folder |X |X |X |

|Delete |X |X |X |

|Diff |X | | |

|Edit |X |X | |

|Find In Files |X | | |

|Get Latest Version |X | | |

|History |X | | |

|Label |X |X |X |

|Merge |X |X | |

|Merge Branches |X |X | |

|Move |X |X |X |

|Open Repository | | | |

|Options | | | |

|Pin/Unpin |X |X |X |

|View Properties |X | | |

|Edit Properties |X |X | |

|Refresh |X | | |

|Rename |X |X |X |

|Rollback |X |X | |

|Set Working Folder |X | | |

|Share |X |X |X |

|Share Branch |X |X |X |

|UnCloak | | | |

|Undelete |X |X |X |

|Undo Check Out |X | | |

|View |X | | |

Naming Syntax, Conventions and Limitations

User name

Length of user login = 64

User names can consist of alphanumeric characters, plus dashes and underscores.

A user name cannot consist entirely of periods or spaces.

User password

Length of password = 128 chars

Can be empty

Repository

Length of repository name = 256 chars

Label Name

Length of label name = 256 chars

File Name

Length of file / folder = 256 chars

Filenames in the server are case-insensitive, so for example, files called File.txt and FILE.txt cannot exist in the same folder. However, the file or folder should display in the case the user entered it, so that FILE.txt would be always be displayed as FILE.txt, and not as file.txt.

Filenames can consist of any characters except: / \ : * ? “ < > |

A file or folder name cannot consist entirely of periods or spaces, nor can it end in a period.

Path

Length of an entire path in tree = 1024 chars

Group

Length of a group name = 32

Length of group description = 256

Comment

Length of transaction comment = 2304 chars

Size of File Stored in Database

Limited to SQL Server or MSDE

Number of Versions of a Given File

2^63-1

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download