#
source:
trunk/third/rcs/man/rcsfile.5
@
9047

Revision 9047, 10.8 KB checked in by ghudson, 28 years ago (diff) |
---|

Line | |
---|---|

1 | .lf 1 ./rcsfile.5in |

2 | .\" Set p to 1 if your formatter can handle pic output. |

3 | .if t .nr p 1 |

4 | .de Id |

5 | .ds Rv \\$3 |

6 | .ds Dt \\$4 |

7 | .. |

8 | .Id $Id: rcsfile.5,v 1.1.1.1 1996-10-04 05:52:42 ghudson Exp $ |

9 | .ds r \s-1RCS\s0 |

10 | .if n .ds - \%-- |

11 | .if t .ds - \(em |

12 | .TH RCSFILE 5 \*(Dt GNU |

13 | .SH NAME |

14 | rcsfile \- format of RCS file |

15 | .SH DESCRIPTION |

16 | An \*r file's |

17 | contents are described by the grammar |

18 | below. |

19 | .PP |

20 | The text is free format: space, backspace, tab, newline, vertical |

21 | tab, form feed, and carriage return (collectively, |

22 | .IR "white space") |

23 | have no significance except in strings. |

24 | However, white space cannot appear within an id, num, or sym, |

25 | and an \*r file must end with a newline. |

26 | .PP |

27 | Strings are enclosed by |

28 | .BR @ . |

29 | If a string contains a |

30 | .BR @ , |

31 | it must be doubled; |

32 | otherwise, strings can contain arbitrary binary data. |

33 | .PP |

34 | The meta syntax uses the following conventions: `|' (bar) separates |

35 | alternatives; `{' and `}' enclose optional phrases; `{' and `}*' enclose |

36 | phrases that can be repeated zero or more times; |

37 | `{' and '}+' enclose phrases that must appear at least once and can be |

38 | repeated; |

39 | Terminal symbols are in |

40 | .BR boldface ; |

41 | nonterminal symbols are in |

42 | .IR italics . |

43 | .LP |

44 | .nr w \w'\f3deltatext\fP ' |

45 | .nr y \w'\f3newphrase\fP ' |

46 | .if \nw<\ny .nr w \ny |

47 | .nr x \w'\f3branches\fP' |

48 | .nr y \w'{ \f3comment\fP' |

49 | .if \nx<\ny .nr x \ny |

50 | .nr y \w'\f3{ branch\fP' |

51 | .if \nx<\ny .nr x \ny |

52 | .ta \nwu +\w'::= 'u +\nxu+\w' 'u |

53 | .fc # |

54 | .nf |

55 | \f2rcstext\fP ::= \f2admin\fP {\f2delta\fP}* \f2desc\fP {\f2deltatext\fP}* |

56 | .LP |

57 | \f2admin\fP ::= \f3head\fP {\f2num\fP}\f3;\fP |

58 | { \f3branch\fP {\f2num\fP}\f3;\fP } |

59 | \f3access\fP {\f2id\fP}*\f3;\fP |

60 | \f3symbols\fP {\f2sym\fP \f3:\fP \f2num\fP}*\f3;\fP |

61 | \f3locks\fP {\f2id\fP \f3:\fP \f2num\fP}*\f3;\fP {\f3strict ;\fP} |

62 | { \f3comment\fP {\f2string\fP}\f3;\fP } |

63 | { \f3expand\fP {\f2string\fP}\f3;\fP } |

64 | { \f2newphrase\fP }* |

65 | .LP |

66 | \f2delta\fP ::= \f2num\fP |

67 | \f3date\fP \f2num\fP\f3;\fP |

68 | \f3author\fP \f2id\fP\f3;\fP |

69 | \f3state\fP {\f2id\fP}\f3;\fP |

70 | \f3branches\fP {\f2num\fP}*\f3;\fP |

71 | \f3next\fP {\f2num\fP}\f3;\fP |

72 | { \f2newphrase\fP }* |

73 | .LP |

74 | \f2desc\fP ::= \f3desc\fP \f2string\fP |

75 | .LP |

76 | \f2deltatext\fP ::= \f2num\fP |

77 | \f3log\fP \f2string\fP |

78 | { \f2newphrase\fP }* |

79 | \f3text\fP \f2string\fP |

80 | .LP |

81 | \f2num\fP ::= {\f2digit\fP | \f3.\fP}+ |

82 | .LP |

83 | \f2digit\fP ::= \f30\fP | \f31\fP | \f32\fP | \f33\fP | \f34\fP | \f35\fP | \f36\fP | \f37\fP | \f38\fP | \f39\fP |

84 | .LP |

85 | \f2id\fP ::= {\f2num\fP} \f2idchar\fP {\f2idchar\fP | \f2num\fP}* |

86 | .LP |

87 | \f2sym\fP ::= {\f2digit\fP}* \f2idchar\fP {\f2idchar\fP | \f2digit\fP}* |

88 | .LP |

89 | \f2idchar\fP ::= any visible graphic character except \f2special\fP |

90 | .LP |

91 | \f2special\fP ::= \f3$\fP | \f3,\fP | \f3.\fP | \f3:\fP | \f3;\fP | \f3@\fP |

92 | .LP |

93 | \f2string\fP ::= \f3@\fP{any character, with \f3@\fP doubled}*\f3@\fP |

94 | .LP |

95 | \f2newphrase\fP ::= \f2id\fP \f2word\fP* \f3;\fP |

96 | .LP |

97 | \f2word\fP ::= \f2id\fP | \f2num\fP | \f2string\fP | \f3:\fP |

98 | .fi |

99 | .PP |

100 | Identifiers are case sensitive. Keywords are in lower case only. |

101 | The sets of keywords and identifiers can overlap. |

102 | In most environments \*r uses the \s-1ISO\s0 8859/1 encoding: |

103 | visible graphic characters are codes 041\-176 and 240\-377, |

104 | and white space characters are codes 010\-015 and 040. |

105 | .PP |

106 | Dates, which appear after the |

107 | .B date |

108 | keyword, are of the form |

109 | \f2Y\fP\f3.\fP\f2mm\fP\f3.\fP\f2dd\fP\f3.\fP\f2hh\fP\f3.\fP\f2mm\fP\f3.\fP\f2ss\fP, |

110 | where |

111 | .I Y |

112 | is the year, |

113 | .I mm |

114 | the month (01\-12), |

115 | .I dd |

116 | the day (01\-31), |

117 | .I hh |

118 | the hour (00\-23), |

119 | .I mm |

120 | the minute (00\-59), |

121 | and |

122 | .I ss |

123 | the second (00\-60). |

124 | .I Y |

125 | contains just the last two digits of the year |

126 | for years from 1900 through 1999, |

127 | and all the digits of years thereafter. |

128 | Dates use the Gregorian calendar; times use UTC. |

129 | .PP |

130 | The |

131 | .I newphrase |

132 | productions in the grammar are reserved for future extensions |

133 | to the format of \*r files. |

134 | No |

135 | .I newphrase |

136 | will begin with any keyword already in use. |

137 | .PP |

138 | The |

139 | .I delta |

140 | nodes form a tree. All nodes whose numbers |

141 | consist of a single pair |

142 | (e.g., 2.3, 2.1, 1.3, etc.) |

143 | are on the trunk, and are linked through the |

144 | .B next |

145 | field in order of decreasing numbers. |

146 | The |

147 | .B head |

148 | field in the |

149 | .I admin |

150 | node points to the head of that sequence (i.e., contains |

151 | the highest pair). |

152 | The |

153 | .B branch |

154 | node in the admin node indicates the default |

155 | branch (or revision) for most \*r operations. |

156 | If empty, the default |

157 | branch is the highest branch on the trunk. |

158 | .PP |

159 | All |

160 | .I delta |

161 | nodes whose numbers consist of |

162 | .RI 2 n |

163 | fields |

164 | .RI ( n \(>=2) |

165 | (e.g., 3.1.1.1, 2.1.2.2, etc.) |

166 | are linked as follows. |

167 | All nodes whose first |

168 | .RI 2 n \-1 |

169 | number fields are identical are linked through the |

170 | .B next |

171 | field in order of increasing numbers. |

172 | For each such sequence, |

173 | the |

174 | .I delta |

175 | node whose number is identical to the first |

176 | .RI 2 n \-2 |

177 | number fields of the deltas on that sequence is called the branchpoint. |

178 | The |

179 | .B branches |

180 | field of a node contains a list of the |

181 | numbers of the first nodes of all sequences for which it is a branchpoint. |

182 | This list is ordered in increasing numbers. |

183 | .LP |

184 | The following diagram shows an example of an \*r file's organization. |

185 | .if !\np \{\ |

186 | .nf |

187 | .vs 12 |

188 | .ne 36 |

189 | .cs 1 20 |

190 | .eo |

191 | |

192 | Head |

193 | | |

194 | | |

195 | v / \ |

196 | --------- / \ |

197 | / \ / \ | | / \ / \ |

198 | / \ / \ | 2.1 | / \ / \ |

199 | / \ / \ | | / \ / \ |

200 | /1.2.1.3\ /1.3.1.1\ | | /1.2.2.2\ /1.2.2.1.1.1\ |

201 | --------- --------- --------- --------- ------------- |

202 | ^ ^ | ^ ^ |

203 | | | | | | |

204 | | | v | | |

205 | / \ | --------- / \ | |

206 | / \ | \ 1.3 / / \ | |

207 | / \ ---------\ / / \----------- |

208 | /1.2.1.1\ \ / /1.2.2.1\ |

209 | --------- \ / --------- |

210 | ^ | ^ |

211 | | | | |

212 | | v | |

213 | | --------- | |

214 | | \ 1.2 / | |

215 | ----------------------\ /--------- |

216 | \ / |

217 | \ / |

218 | | |

219 | | |

220 | v |

221 | --------- |

222 | \ 1.1 / |

223 | \ / |

224 | \ / |

225 | \ / |

226 | |

227 | .ec |

228 | .cs 1 |

229 | .vs |

230 | .fi |

231 | .\} |

232 | .if \np \{\ |

233 | .lf 232 |

234 | .PS 4.250i 3.812i |

235 | .\" -2.0625 -4.25 1.75 0 |

236 | .\" 0.000i 4.250i 3.812i 0.000i |

237 | .nr 00 \n(.u |

238 | .nf |

239 | .nr 0x 1 |

240 | \h'3.812i' |

241 | .sp -1 |

242 | .lf 242 |

243 | \h'2.062i-(\w'Head'u/2u)'\v'0.125i-(0v/2u)+0v+0.22m'Head |

244 | .sp -1 |

245 | \h'2.062i'\v'0.250i'\D'l0.000i 0.500i' |

246 | .sp -1 |

247 | \h'2.087i'\v'0.650i'\D'l-0.025i 0.100i' |

248 | .sp -1 |

249 | \h'2.062i'\v'0.750i'\D'l-0.025i -0.100i' |

250 | .sp -1 |

251 | \h'1.688i'\v'1.250i'\D'l0.750i 0.000i' |

252 | .sp -1 |

253 | \h'2.438i'\v'1.250i'\D'l0.000i -0.500i' |

254 | .sp -1 |

255 | \h'2.438i'\v'0.750i'\D'l-0.750i 0.000i' |

256 | .sp -1 |

257 | \h'1.688i'\v'0.750i'\D'l0.000i 0.500i' |

258 | .sp -1 |

259 | .lf 244 |

260 | \h'2.062i-(\w'2.1'u/2u)'\v'1.000i-(0v/2u)+0v+0.22m'2.1 |

261 | .sp -1 |

262 | \h'2.062i'\v'1.250i'\D'l0.000i 0.500i' |

263 | .sp -1 |

264 | \h'2.087i'\v'1.650i'\D'l-0.025i 0.100i' |

265 | .sp -1 |

266 | \h'2.062i'\v'1.750i'\D'l-0.025i -0.100i' |

267 | .sp -1 |

268 | .lf 246 |

269 | \h'2.062i-(\w'1.3'u/2u)'\v'2.000i-(1v/2u)+0v+0.22m'1.3 |

270 | .sp -1 |

271 | \h'2.062i'\v'2.250i'\D'l-0.375i -0.500i' |

272 | .sp -1 |

273 | \h'1.688i'\v'1.750i'\D'l0.750i 0.000i' |

274 | .sp -1 |

275 | \h'2.438i'\v'1.750i'\D'l-0.375i 0.500i' |

276 | .sp -1 |

277 | \h'1.875i'\v'2.000i'\D'~-0.500i 0.000i 0.000i -0.500i' |

278 | .sp -1 |

279 | \h'1.350i'\v'1.600i'\D'l0.025i -0.100i' |

280 | .sp -1 |

281 | \h'1.375i'\v'1.500i'\D'l0.025i 0.100i' |

282 | .sp -1 |

283 | .lf 249 |

284 | \h'1.375i-(\w'1.3.1.1'u/2u)'\v'1.250i-(1v/2u)+1v+0.22m'1.3.1.1 |

285 | .sp -1 |

286 | \h'1.375i'\v'1.000i'\D'l-0.375i 0.500i' |

287 | .sp -1 |

288 | \h'1.000i'\v'1.500i'\D'l0.750i 0.000i' |

289 | .sp -1 |

290 | \h'1.750i'\v'1.500i'\D'l-0.375i -0.500i' |

291 | .sp -1 |

292 | \h'2.062i'\v'2.250i'\D'l0.000i 0.500i' |

293 | .sp -1 |

294 | \h'2.087i'\v'2.650i'\D'l-0.025i 0.100i' |

295 | .sp -1 |

296 | \h'2.062i'\v'2.750i'\D'l-0.025i -0.100i' |

297 | .sp -1 |

298 | .lf 252 |

299 | \h'2.062i-(\w'1.2'u/2u)'\v'3.000i-(1v/2u)+0v+0.22m'1.2 |

300 | .sp -1 |

301 | \h'2.062i'\v'3.250i'\D'l-0.375i -0.500i' |

302 | .sp -1 |

303 | \h'1.688i'\v'2.750i'\D'l0.750i 0.000i' |

304 | .sp -1 |

305 | \h'2.438i'\v'2.750i'\D'l-0.375i 0.500i' |

306 | .sp -1 |

307 | \h'1.875i'\v'3.000i'\D'~-0.500i 0.000i -0.500i 0.000i -0.500i 0.000i 0.000i -0.500i' |

308 | .sp -1 |

309 | \h'0.350i'\v'2.600i'\D'l0.025i -0.100i' |

310 | .sp -1 |

311 | \h'0.375i'\v'2.500i'\D'l0.025i 0.100i' |

312 | .sp -1 |

313 | .lf 255 |

314 | \h'0.375i-(\w'1.2.1.1'u/2u)'\v'2.250i-(1v/2u)+1v+0.22m'1.2.1.1 |

315 | .sp -1 |

316 | \h'0.375i'\v'2.000i'\D'l-0.375i 0.500i' |

317 | .sp -1 |

318 | \h'0.000i'\v'2.500i'\D'l0.750i 0.000i' |

319 | .sp -1 |

320 | \h'0.750i'\v'2.500i'\D'l-0.375i -0.500i' |

321 | .sp -1 |

322 | \h'0.375i'\v'2.000i'\D'l0.000i -0.500i' |

323 | .sp -1 |

324 | \h'0.350i'\v'1.600i'\D'l0.025i -0.100i' |

325 | .sp -1 |

326 | \h'0.375i'\v'1.500i'\D'l0.025i 0.100i' |

327 | .sp -1 |

328 | .lf 257 |

329 | \h'0.375i-(\w'1.2.1.3'u/2u)'\v'1.250i-(1v/2u)+1v+0.22m'1.2.1.3 |

330 | .sp -1 |

331 | \h'0.375i'\v'1.000i'\D'l-0.375i 0.500i' |

332 | .sp -1 |

333 | \h'0.000i'\v'1.500i'\D'l0.750i 0.000i' |

334 | .sp -1 |

335 | \h'0.750i'\v'1.500i'\D'l-0.375i -0.500i' |

336 | .sp -1 |

337 | \h'2.250i'\v'3.000i'\D'~0.500i 0.000i 0.000i -0.500i' |

338 | .sp -1 |

339 | \h'2.725i'\v'2.600i'\D'l0.025i -0.100i' |

340 | .sp -1 |

341 | \h'2.750i'\v'2.500i'\D'l0.025i 0.100i' |

342 | .sp -1 |

343 | .lf 261 |

344 | \h'2.750i-(\w'1.2.2.1'u/2u)'\v'2.250i-(1v/2u)+1v+0.22m'1.2.2.1 |

345 | .sp -1 |

346 | \h'2.750i'\v'2.000i'\D'l-0.375i 0.500i' |

347 | .sp -1 |

348 | \h'2.375i'\v'2.500i'\D'l0.750i 0.000i' |

349 | .sp -1 |

350 | \h'3.125i'\v'2.500i'\D'l-0.375i -0.500i' |

351 | .sp -1 |

352 | \h'2.938i'\v'2.250i'\D'~0.500i 0.000i 0.000i -0.500i 0.000i -0.500i' |

353 | .sp -1 |

354 | \h'3.413i'\v'1.350i'\D'l0.025i -0.100i' |

355 | .sp -1 |

356 | \h'3.438i'\v'1.250i'\D'l0.025i 0.100i' |

357 | .sp -1 |

358 | .lf 264 |

359 | \h'3.438i-(\w'\s-21.2.2.1.1.1\s0'u/2u)'\v'1.000i-(1v/2u)+1v+0.22m'\s-21.2.2.1.1.1\s0 |

360 | .sp -1 |

361 | \h'3.438i'\v'0.750i'\D'l-0.375i 0.500i' |

362 | .sp -1 |

363 | \h'3.062i'\v'1.250i'\D'l0.750i 0.000i' |

364 | .sp -1 |

365 | \h'3.812i'\v'1.250i'\D'l-0.375i -0.500i' |

366 | .sp -1 |

367 | \h'2.750i'\v'2.000i'\D'l0.000i -0.500i' |

368 | .sp -1 |

369 | \h'2.725i'\v'1.600i'\D'l0.025i -0.100i' |

370 | .sp -1 |

371 | \h'2.750i'\v'1.500i'\D'l0.025i 0.100i' |

372 | .sp -1 |

373 | .lf 267 |

374 | \h'2.750i-(\w'1.2.2.2'u/2u)'\v'1.250i-(1v/2u)+1v+0.22m'1.2.2.2 |

375 | .sp -1 |

376 | \h'2.750i'\v'1.000i'\D'l-0.375i 0.500i' |

377 | .sp -1 |

378 | \h'2.375i'\v'1.500i'\D'l0.750i 0.000i' |

379 | .sp -1 |

380 | \h'3.125i'\v'1.500i'\D'l-0.375i -0.500i' |

381 | .sp -1 |

382 | \h'2.062i'\v'3.250i'\D'l0.000i 0.500i' |

383 | .sp -1 |

384 | \h'2.087i'\v'3.650i'\D'l-0.025i 0.100i' |

385 | .sp -1 |

386 | \h'2.062i'\v'3.750i'\D'l-0.025i -0.100i' |

387 | .sp -1 |

388 | .lf 270 |

389 | \h'2.062i-(\w'1.1'u/2u)'\v'4.000i-(1v/2u)+0v+0.22m'1.1 |

390 | .sp -1 |

391 | \h'2.062i'\v'4.250i'\D'l-0.375i -0.500i' |

392 | .sp -1 |

393 | \h'1.688i'\v'3.750i'\D'l0.750i 0.000i' |

394 | .sp -1 |

395 | \h'2.438i'\v'3.750i'\D'l-0.375i 0.500i' |

396 | .sp -1 |

397 | .sp 4.250i+1 |

398 | .if \n(00 .fi |

399 | .br |

400 | .nr 0x 0 |

401 | .lf 271 |

402 | .PE |

403 | .lf 272 |

404 | .\} |

405 | .PP |

406 | .SH IDENTIFICATION |

407 | .de VL |

408 | \\$2 |

409 | .. |

410 | Author: Walter F. Tichy, |

411 | Purdue University, West Lafayette, IN, 47907. |

412 | .br |

413 | Manual Page Revision: \*(Rv; Release Date: \*(Dt. |

414 | .br |

415 | Copyright \(co 1982, 1988, 1989 Walter F. Tichy. |

416 | .br |

417 | Copyright \(co 1990, 1991, 1992, 1993, 1994, 1995 Paul Eggert. |

418 | .SH SEE ALSO |

419 | rcsintro(1), ci(1), co(1), ident(1), rcs(1), rcsclean(1), rcsdiff(1), |

420 | rcsmerge(1), rlog(1) |

421 | .br |

422 | Walter F. Tichy, |

423 | \*r\*-A System for Version Control, |

424 | .I "Software\*-Practice & Experience" |

425 | .BR 15 , |

426 | 7 (July 1985), 637-654. |

**Note:**See TracBrowser for help on using the repository browser.