Fossil SCM

Added documentation for the persistent state of pass I.

aku 2007-10-05 07:07 trunk
Commit 78da61db0ef93a652fd267d20e034a9319ca4f2a
--- tools/cvs2fossil/lib/c2f_pcollar.tcl
+++ tools/cvs2fossil/lib/c2f_pcollar.tcl
@@ -45,19 +45,38 @@
4545
4646
typemethod setup {} {
4747
# Define names and structure of the persistent state of this
4848
# pass.
4949
50
+ # We deal with repository projects, and the rcs archive files
51
+ # in the projects.
52
+
53
+ # For the first, projects, we keep their names, which are
54
+ # their paths relative to the base directory of the whole
55
+ # repository. These have to be globally unique, i.e. no two
56
+ # projects can have the same name.
57
+
58
+ # For the files we keep their names, which are their paths
59
+ # relative to the base directory of the whole project! These
60
+ # have to be unique within a project, however globally this
61
+ # does not hold, a name may occur several times, in different
62
+ # projects. We further store the user visible file name
63
+ # associated with the rcs archive.
64
+
65
+ # Both projects and files are identified by globally unique
66
+ # integer ids, automatically assigned by the database.
67
+
5068
state writing project {
5169
pid INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
5270
name TEXT NOT NULL UNIQUE
5371
}
54
- state writing files {
72
+ state writing file {
5573
fid INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
5674
pid INTEGER NOT NULL REFERENCES project,
57
- name TEXT NOT NULL UNIQUE,
58
- visible TEXT NOT NULL UNIQUE
75
+ name TEXT NOT NULL,
76
+ visible TEXT NOT NULL,
77
+ UNIQUE (pid, name)
5978
}
6079
return
6180
}
6281
6382
typemethod run {} {
6483
--- tools/cvs2fossil/lib/c2f_pcollar.tcl
+++ tools/cvs2fossil/lib/c2f_pcollar.tcl
@@ -45,19 +45,38 @@
45
46 typemethod setup {} {
47 # Define names and structure of the persistent state of this
48 # pass.
49
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50 state writing project {
51 pid INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
52 name TEXT NOT NULL UNIQUE
53 }
54 state writing files {
55 fid INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
56 pid INTEGER NOT NULL REFERENCES project,
57 name TEXT NOT NULL UNIQUE,
58 visible TEXT NOT NULL UNIQUE
 
59 }
60 return
61 }
62
63 typemethod run {} {
64
--- tools/cvs2fossil/lib/c2f_pcollar.tcl
+++ tools/cvs2fossil/lib/c2f_pcollar.tcl
@@ -45,19 +45,38 @@
45
46 typemethod setup {} {
47 # Define names and structure of the persistent state of this
48 # pass.
49
50 # We deal with repository projects, and the rcs archive files
51 # in the projects.
52
53 # For the first, projects, we keep their names, which are
54 # their paths relative to the base directory of the whole
55 # repository. These have to be globally unique, i.e. no two
56 # projects can have the same name.
57
58 # For the files we keep their names, which are their paths
59 # relative to the base directory of the whole project! These
60 # have to be unique within a project, however globally this
61 # does not hold, a name may occur several times, in different
62 # projects. We further store the user visible file name
63 # associated with the rcs archive.
64
65 # Both projects and files are identified by globally unique
66 # integer ids, automatically assigned by the database.
67
68 state writing project {
69 pid INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
70 name TEXT NOT NULL UNIQUE
71 }
72 state writing file {
73 fid INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
74 pid INTEGER NOT NULL REFERENCES project,
75 name TEXT NOT NULL,
76 visible TEXT NOT NULL,
77 UNIQUE (pid, name)
78 }
79 return
80 }
81
82 typemethod run {} {
83

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button