Datenbankentwurf
Eine Visual SourceSafe-Datenbank ist eine Dateisystemdatenbank. Optionen auf Benutzer- und Datenbankebene werden in Initialisierungsdateien gespeichert. Datei-, Projekt- und Datenbank-Metadaten werden in Binärdateien auf einem Datenträger gespeichert.
Inhalt einer Visual SourceSafe-Datenbank
Eine Visual SourceSafe-Datenbank besteht aus den in der folgenden Tabelle definierten Dateien und Ordnern. Diese Elemente werden im Verzeichnis Data der Visual SourceSafe-Installation gespeichert.
- Aaaaaaaa.cnt
Gibt den physikalischen Namen der letzten Datei wieder, die der Datenbank hinzugefügt wurde.
- Crcs.dat
Enthält zyklische Redundanzprüfungsinformationen (CRC), mit deren Hilfe die Abruf- und Auscheckvorgänge beschleunigt werden.
- Ddcerr.log
Enthält vom DDCONV-Dienstprogramm generierte Fehler.
- Names.dat
Enthält Informationen über lange Dateinamen, d. h. Namen mit mehr als 34 Zeichen. Bearbeiten oder löschen Sie diese Datei nicht.
- Rights.dat
Enthält Benutzer- und Projektsicherheitsinformationen und gibt die Beziehungen zwischen Benutzern und Projektrechten an.
- Srcsafe.ini
Enthält globale Datenbankeinstellungen und Konfigurationsinformationen für alle Benutzer.
- Status.dat
Enthält Auscheckstatusinformationen für Datenbankdateien. Diese Datei ist eine Cachedatei, die zum Beschleunigen der Anzeige von Visual SourceSafe Explorer verwendet wird.
- Um.dat
Enthält Benutzerverwaltungsinformationen (Namen und Kennwörter) und den Datenbankbezeichner (GUID). Bearbeiten oder löschen Sie diese Datei nicht.
- Version.dat
Enthält die Versionsinformationen der Visual SourceSafe-Datenbank.
- A-Z (Ordner)
Enthalten Protokoll- und Datendateien.
- Backup (Ordner)
Enthält eine Protokolldatei für das ANALYZE-Dienstprogramm (Analyze.log), eine Liste von Dateien mit Fehlern für ANALYZE (Analyze.bad) und Sicherheitskopien der von ANALYZE geänderten Dateien.
- Labels (Ordner)
Enthält Bezeichnungscacheinformationen, die für den Bezeichnungswechsel der Dateien von einem Projekt zu einem anderen verwendet werden.
- Locks (Ordner)
Enthält gesperrte Dateien, die verwendet werden, wenn die Visual SourceSafe-Sperre aktiviert ist.
- Loggedin (Ordner)
Enthält Benutzeranmeldungsdateien und eine Admin.lck-Datei, wenn die Datenbank gesperrt ist.
Von Visual SourceSafe werden im Verzeichnis Data für alle Dateien und Projekte, die Sie der Datenbank hinzufügen, zwei Dateien erstellt. Die Dateipaare werden gleichmäßig über die A-Z-Ordner in diesem Verzeichnis verteilt. Die Datei ohne Dateierweiterung, z.B. QRBAAAAA, ist die Protokolldatei für den gerade gespeicherten Dateityp. Die Protokolldatei enthält interne Informationen für Visual SourceSafe, z. B. wer die Datei hinzugefügt hat, wo sie sich befindet sowie alle Unterschiede zwischen den Dateiversionen.
Die Datei mit der Erweiterung .A oder .B, z. B. QRBAAAAA.A, ist die aktuellste Version der eigentlichen Datei, die unter einem physikalischen Visual SourceSafe-Namen gespeichert wurde. Bei jedem Einchecken einer Datei wechselt die Dateierweiterung, mit der die Datei gespeichert wird, zwischen .A und .B.
Wenn Sie eine Datei aus einem anderen Projekt freigeben, wird in der Visual SourceSafe-Datenbank kein neues Dateipaar erstellt. Stattdessen wird von Visual SourceSafe in der Protokolldatei der ursprünglichen Datei ein Verweis mit dem Hinweis erstellt, dass die Datei auch in einem anderen Projekt vorhanden ist.
Beim Einchecken einer Datei wird die Datei von Visual SourceSafe aus dem Arbeitsordner in das Verzeichnis Data kopiert und umbenannt. Dabei erhält die Datei den physikalischen Namen und die Dateierweiterung .A oder .B, je nachdem, welche Erweiterung vorher nicht vorhanden war. Danach werden die Unterschiede zwischen den A- und B-Dateien von Visual SourceSafe berechnet. Diese Unterschiede (delta) werden in der Protokolldatei gespeichert. Nach der Aktualisierung der Protokolldatei wird die alte Kopie der Datendatei von Visual SourceSafe gelöscht. Normalerweise sollte ein physikalischer Dateiname niemals gleichzeitig mit den Dateinamenerweiterungen .A und .B vorhanden sein.
Warnung
Benennen Sie im Verzeichnis Data niemals eine .A- oder .B-Datei um. Zwar beheben Sie durch das Umbenennen scheinbar das augenblickliche Problem, mit dem Sie konfrontiert sind, z. B.: Die Datei QRBAAAAA.A wurde nicht gefunden. Durch das Umbenennen der Datei können jedoch die früheren Dateiversionen nicht wiederhergestellt werden. Sie können diesen Fehler beheben, indem Sie das Dateipaar aus einer kürzlich erstellten Sicherungskopie wiederherstellen.
Dateien zum Steuern einer Datenbank
Visual SourceSafe steuert die Datenbanken mithilfe mehrerer spezieller Dateien, in denen Metadaten über die Datenelemente gespeichert sind. Zu den Informationen in diesen Dateien gehören Initialisierungsvariablen, Optionen, die im Dialogfeld SourceSafe-Optionen ausgewählt wurden, Fenster- und Symbolleistenpositionen sowie Dialogeinstellungen. Visual SourceSafe Explorer, Visual SourceSafe Administrator und das Befehlszeilendienstprogramm Ss.exe aktualisieren diese Dateien automatisch, während Sie die Programme zur Interaktion mit der Datenbank verwenden.
Srcsafe.ini
In der Datei Srcsafe.ini der Visual SourceSafe-Datenbank werden die globalen Einstellungen und Konfigurationsinformationen für alle Benutzer gespeichert. Visual SourceSafe liest diese Datei lediglich beim Start. Deshalb haben Änderungen während des Betriebs keinen Einfluss auf die gerade ausgeführten Visual SourceSafe-Clients. Sie müssen das Clientprogramm beenden und erneut starten, um die Änderungen zu sehen. Es folgt ein Beispiel für eine Srcsafe.ini-Datei:
; srcsafe.ini
;
; Three of these variables — Data_Path, Users_Path, and Users_Txt —
; must be in Srcsafe.ini. Any other variable here can be overridden in
; Ss.ini. Similarly, any Ss.ini variable can be placed in Srcsafe.ini
; to set a system "default," which individual users can still override
; in Ss.ini. The two important paths used by VSS.
Data_Path = data
Temp_Path = temp
; This tells Admin where to put personal directories for new users.
Users_Path = users
; From this, find Users.txt; from that, in turn, find Ss.ini for user.
Users_Txt = users.txt
; The following line contains common file groupings.
File_Types = VB(*.asp;*.bas;*.cls;*.ct?;*.dca;*.dep;*.dob;*.dox;*.ds?;*.fr?;
*.log;*.oca;*.pag;*.pgx;*.res;*.swt;*.vb?),VC(*.bmp;*.c;*.cpp;*.cur;*.cxx;*.def;
*.ds?;*.h;*.hpj;*.hpp;*.hxx;*.ico;*.inl;*.mak;*.rc;*.rc2;*.rgs),VID(*.asa;*.asp;
*.css;*.dbp;*.dtq;*.htm*;*.pkp;*.sln;*.sql;*.txt;*.vip;*.wdm),VJ(*.java;*.vjp;
*.pkp;*.sln;*.txt),VFP(*.cdx;*.db?;*.dc?;*.fpt;*.fr?;*.idx;*.lb?;*.mn?;*.mpr;
*.pj?;*.prg;*.qpr;*.sc?;*.vc?)
Ss.ini
Für jeden Datenbankbenutzer wird von Visual SourceSafe eine Ss.ini-Datei erstellt, in der die benutzerabhängigen Einstellungen im Verzeichnis Users\<Benutzername> definiert sind. Jedes Mal, wenn sich ein Benutzer von einem anderen Computer aus anmeldet, werden in der Datei Ss.ini die Fensterpositionen und andere computerspezifische Informationen gespeichert. Eine Ss.ini-Datei ist auf 64 KB und maximal zehn verschiedene computerspezifische Einstellungen begrenzt. Es folgt ein Beispiel für eine Ss.ini-Datei:
| SS.INI
;
| This file contains all the variables that "customize" VSS
| to your particular needs. The Ss.ini variables are documented in
| Online Help. Only a few of them are placed in this file by default.
| C programmers should remove the semicolon from the following line, to
| uncomment it. Other programmers REPLACE line with different masks.
| Relevant_Masks = *.c, *.h, *., *.asm
| The following line prevents you from being asked for a check out
| comment.
Checkout_Comment = -
Project = $/Samples
Maximized (Win) = No
Sort_Order = Date
[$/Features]
[$/MyProject]
Ssadmin.ini
Ein Benutzer, der als Datenbankadministrator fungiert, verfügt ebenfalls über eine Ssadmin.ini-Datei, die unter Users\Admin gespeichert ist. Diese Datei enthält die Fenster- und Symbolleisteneinstellungen für Visual SourceSafe Administrator. Die globalen Datenbankeinstellungen, die vom Datenbankadministrator unter Verwendung dieses Clientprogramms konfiguriert werden, sind in Srcsafe.ini gespeichert.
Template.ini
In der Datei Template.ini, die sich im Benutzerverzeichnis befindet, werden die Standardwerte für die Ss.ini-Dateien der Datenbankbenutzer gespeichert. Visual SourceSafe verwendet diese Datei als Vorlage für neue Benutzer. Wenn Sie der Datenbankadministrator sind und Konfigurationseinstellungen vornehmen müssen, die für alle neuen Benutzer gelten sollen, tragen Sie die Änderungen in diese Datei ein. Die Einstellungen werden dann für jeden neuen Benutzer in der Datei Ss.ini angezeigt. Sie müssen die entsprechenden Änderungen für jeden vorhandenen Benutzer manuell vornehmen.
Users.txt
Visual SourceSafe fügt eine Users.txt-Datei im Benutzerverzeichnis ein. In dieser Datei sind alle Benutzer der Visual SourceSafe-Datenbank aufgeführt.
Datenbanksicherheit und -zugriff
Benutzername und Benutzerkennwort werden von Visual SourceSafe verwendet, um Zugriff auf die Datenbank zu gewähren. Der Zugriff hängt von den Freigabeberechtigungen und Projektrechten ab, die nach Erstellung der Datenbank vom Datenbankadministrator erteilt werden müssen. Weitere Informationen finden Sie unter Sichern einer Datenbank.
Siehe auch
Referenz
ANALYZE-Dienstprogramm
DDCONV-Dienstprogramm