Fossil SCM

Add the new special name start:BRANCH to refer to the first check-in of the branch.

danield 2022-04-25 06:08 trunk merge
Commit fab8d922154df9e54a3b6b0ef0ba4328ec1a833cdaf37c46895d7c9909303f09
+9 -1
--- src/name.c
+++ src/name.c
@@ -261,10 +261,11 @@
261261
** * "next"
262262
**
263263
** The following modifier prefixes may be applied to the above forms:
264264
**
265265
** * "root:BR" = The origin of the branch named BR.
266
+** * "start:BR" = The first check-in of the branch named BR.
266267
** * "merge-in:BR" = The most recent merge-in for the branch named BR.
267268
**
268269
** In those forms, BR may be any symbolic form but is assumed to be a
269270
** checkin. Thus root:2021-02-01 would resolve to a checkin, possibly
270271
** in a branch and possibly in the trunk, but never a wiki edit or
@@ -378,11 +379,18 @@
378379
/* root:BR -> The origin of the branch named BR */
379380
if( strncmp(zTag, "root:", 5)==0 ){
380381
rid = symbolic_name_to_rid(zTag+5, zType);
381382
return start_of_branch(rid, 0);
382383
}
383
- /* merge-in:BR -> Most recent merge-in for the branch name BR */
384
+
385
+ /* start:BR -> The first check-in on branch named BR */
386
+ if( strncmp(zTag, "start:", 6)==0 ){
387
+ rid = symbolic_name_to_rid(zTag+6, zType);
388
+ return start_of_branch(rid, 1);
389
+ }
390
+
391
+ /* merge-in:BR -> Most recent merge-in for the branch named BR */
384392
if( strncmp(zTag, "merge-in:", 9)==0 ){
385393
rid = symbolic_name_to_rid(zTag+9, zType);
386394
return start_of_branch(rid, 2);
387395
}
388396
389397
--- src/name.c
+++ src/name.c
@@ -261,10 +261,11 @@
261 ** * "next"
262 **
263 ** The following modifier prefixes may be applied to the above forms:
264 **
265 ** * "root:BR" = The origin of the branch named BR.
 
266 ** * "merge-in:BR" = The most recent merge-in for the branch named BR.
267 **
268 ** In those forms, BR may be any symbolic form but is assumed to be a
269 ** checkin. Thus root:2021-02-01 would resolve to a checkin, possibly
270 ** in a branch and possibly in the trunk, but never a wiki edit or
@@ -378,11 +379,18 @@
378 /* root:BR -> The origin of the branch named BR */
379 if( strncmp(zTag, "root:", 5)==0 ){
380 rid = symbolic_name_to_rid(zTag+5, zType);
381 return start_of_branch(rid, 0);
382 }
383 /* merge-in:BR -> Most recent merge-in for the branch name BR */
 
 
 
 
 
 
 
384 if( strncmp(zTag, "merge-in:", 9)==0 ){
385 rid = symbolic_name_to_rid(zTag+9, zType);
386 return start_of_branch(rid, 2);
387 }
388
389
--- src/name.c
+++ src/name.c
@@ -261,10 +261,11 @@
261 ** * "next"
262 **
263 ** The following modifier prefixes may be applied to the above forms:
264 **
265 ** * "root:BR" = The origin of the branch named BR.
266 ** * "start:BR" = The first check-in of the branch named BR.
267 ** * "merge-in:BR" = The most recent merge-in for the branch named BR.
268 **
269 ** In those forms, BR may be any symbolic form but is assumed to be a
270 ** checkin. Thus root:2021-02-01 would resolve to a checkin, possibly
271 ** in a branch and possibly in the trunk, but never a wiki edit or
@@ -378,11 +379,18 @@
379 /* root:BR -> The origin of the branch named BR */
380 if( strncmp(zTag, "root:", 5)==0 ){
381 rid = symbolic_name_to_rid(zTag+5, zType);
382 return start_of_branch(rid, 0);
383 }
384
385 /* start:BR -> The first check-in on branch named BR */
386 if( strncmp(zTag, "start:", 6)==0 ){
387 rid = symbolic_name_to_rid(zTag+6, zType);
388 return start_of_branch(rid, 1);
389 }
390
391 /* merge-in:BR -> Most recent merge-in for the branch named BR */
392 if( strncmp(zTag, "merge-in:", 9)==0 ){
393 rid = symbolic_name_to_rid(zTag+9, zType);
394 return start_of_branch(rid, 2);
395 }
396
397
--- www/changes.wiki
+++ www/changes.wiki
@@ -14,10 +14,12 @@
1414
* Add the new "[/help?cmd=describe|fossil describe]" command.
1515
* Markdown subsystem extended with [../src/markdown.md#ftnts|footnotes support].
1616
See corresponding [../test/markdown-test3.md|test cases],
1717
[/wiki?name=branch/markdown-footnotes#il|known limitations] and
1818
[forum:/forumthread/ee1f1597e46ec07a|discussion].
19
+ * Add the new special name "start:BRANCH" to refer to the first check-in of
20
+ the branch.
1921
2022
<h2 id='v2_18'>Changes for version 2.18 (2022-02-23)</h2>
2123
* Added support for [./ssl-server.md|SSL/TLS server mode] for commands
2224
like "[/help?cmd=server|fossil server]" and "[/help?cmd=http|fossil http]"
2325
* The new [/help?cmd=cherry-pick|cherry-pick command] is an alias for
2426
--- www/changes.wiki
+++ www/changes.wiki
@@ -14,10 +14,12 @@
14 * Add the new "[/help?cmd=describe|fossil describe]" command.
15 * Markdown subsystem extended with [../src/markdown.md#ftnts|footnotes support].
16 See corresponding [../test/markdown-test3.md|test cases],
17 [/wiki?name=branch/markdown-footnotes#il|known limitations] and
18 [forum:/forumthread/ee1f1597e46ec07a|discussion].
 
 
19
20 <h2 id='v2_18'>Changes for version 2.18 (2022-02-23)</h2>
21 * Added support for [./ssl-server.md|SSL/TLS server mode] for commands
22 like "[/help?cmd=server|fossil server]" and "[/help?cmd=http|fossil http]"
23 * The new [/help?cmd=cherry-pick|cherry-pick command] is an alias for
24
--- www/changes.wiki
+++ www/changes.wiki
@@ -14,10 +14,12 @@
14 * Add the new "[/help?cmd=describe|fossil describe]" command.
15 * Markdown subsystem extended with [../src/markdown.md#ftnts|footnotes support].
16 See corresponding [../test/markdown-test3.md|test cases],
17 [/wiki?name=branch/markdown-footnotes#il|known limitations] and
18 [forum:/forumthread/ee1f1597e46ec07a|discussion].
19 * Add the new special name "start:BRANCH" to refer to the first check-in of
20 the branch.
21
22 <h2 id='v2_18'>Changes for version 2.18 (2022-02-23)</h2>
23 * Added support for [./ssl-server.md|SSL/TLS server mode] for commands
24 like "[/help?cmd=server|fossil server]" and "[/help?cmd=http|fossil http]"
25 * The new [/help?cmd=cherry-pick|cherry-pick command] is an alias for
26
--- www/checkin_names.wiki
+++ www/checkin_names.wiki
@@ -8,10 +8,11 @@
88
<li> Branch name
99
<li> Tag name
1010
<li> Timestamp: <i>YYYY-MM-DD HH:MM:SS</i>
1111
<li> <i>tag-name</i> <big><b>:</b></big> <i>timestamp</i>
1212
<li> <b>root <big>:</big></b> <i>branchname</i>
13
+<li> <b>start <big>:</big></b> <i>branchname</i>
1314
<li> <b>merge-in <big>:</big></b> <i>branchname</i>
1415
<li> Special names:
1516
<ul>
1617
<li> <b>tip</b>
1718
<li> <b>current</b>
@@ -234,10 +235,13 @@
234235
the most recent merge-in point for that branch.
235236
The resulting diff will then show only the changes in
236237
the branch itself, omitting
237238
any changes that have already been merged in from the parent branch.
238239
240
+<a id="start"></a>
241
+The prefix "<tt>start:</tt>" gives the first check-in of the named branch.
242
+
239243
The prefixes "<tt>root:</tt>" and "<tt>merge-in:</tt>" can be chained: one
240244
can say for example
241245
242246
<blockquote><tt>
243247
fossil info merge-in:xyzzy:2022-03-01
@@ -299,12 +303,13 @@
299303
300304
# Exact matches on [#special | the special names]
301305
# [#timestamps | Timestamps], with preference to ISO8601 forms
302306
# [#tagpfx | tag:TAGNAME]
303307
# [#root | root:BRANCH]
308
+ # [#start | start:BRANCH]
304309
# [#merge-in | merge-in:BRANCH]
305310
# [#tag-ts | TAGNAME:timestamp]
306311
# Full artifact hash or hash prefix.
307312
# Any other type of symbolic name that Fossil extracts from
308313
artifacts.
309314
310315
<div style="height:50em" id="this-space-intentionally-left-blank"></div>
311316
--- www/checkin_names.wiki
+++ www/checkin_names.wiki
@@ -8,10 +8,11 @@
8 <li> Branch name
9 <li> Tag name
10 <li> Timestamp: <i>YYYY-MM-DD HH:MM:SS</i>
11 <li> <i>tag-name</i> <big><b>:</b></big> <i>timestamp</i>
12 <li> <b>root <big>:</big></b> <i>branchname</i>
 
13 <li> <b>merge-in <big>:</big></b> <i>branchname</i>
14 <li> Special names:
15 <ul>
16 <li> <b>tip</b>
17 <li> <b>current</b>
@@ -234,10 +235,13 @@
234 the most recent merge-in point for that branch.
235 The resulting diff will then show only the changes in
236 the branch itself, omitting
237 any changes that have already been merged in from the parent branch.
238
 
 
 
239 The prefixes "<tt>root:</tt>" and "<tt>merge-in:</tt>" can be chained: one
240 can say for example
241
242 <blockquote><tt>
243 fossil info merge-in:xyzzy:2022-03-01
@@ -299,12 +303,13 @@
299
300 # Exact matches on [#special | the special names]
301 # [#timestamps | Timestamps], with preference to ISO8601 forms
302 # [#tagpfx | tag:TAGNAME]
303 # [#root | root:BRANCH]
 
304 # [#merge-in | merge-in:BRANCH]
305 # [#tag-ts | TAGNAME:timestamp]
306 # Full artifact hash or hash prefix.
307 # Any other type of symbolic name that Fossil extracts from
308 artifacts.
309
310 <div style="height:50em" id="this-space-intentionally-left-blank"></div>
311
--- www/checkin_names.wiki
+++ www/checkin_names.wiki
@@ -8,10 +8,11 @@
8 <li> Branch name
9 <li> Tag name
10 <li> Timestamp: <i>YYYY-MM-DD HH:MM:SS</i>
11 <li> <i>tag-name</i> <big><b>:</b></big> <i>timestamp</i>
12 <li> <b>root <big>:</big></b> <i>branchname</i>
13 <li> <b>start <big>:</big></b> <i>branchname</i>
14 <li> <b>merge-in <big>:</big></b> <i>branchname</i>
15 <li> Special names:
16 <ul>
17 <li> <b>tip</b>
18 <li> <b>current</b>
@@ -234,10 +235,13 @@
235 the most recent merge-in point for that branch.
236 The resulting diff will then show only the changes in
237 the branch itself, omitting
238 any changes that have already been merged in from the parent branch.
239
240 <a id="start"></a>
241 The prefix "<tt>start:</tt>" gives the first check-in of the named branch.
242
243 The prefixes "<tt>root:</tt>" and "<tt>merge-in:</tt>" can be chained: one
244 can say for example
245
246 <blockquote><tt>
247 fossil info merge-in:xyzzy:2022-03-01
@@ -299,12 +303,13 @@
303
304 # Exact matches on [#special | the special names]
305 # [#timestamps | Timestamps], with preference to ISO8601 forms
306 # [#tagpfx | tag:TAGNAME]
307 # [#root | root:BRANCH]
308 # [#start | start:BRANCH]
309 # [#merge-in | merge-in:BRANCH]
310 # [#tag-ts | TAGNAME:timestamp]
311 # Full artifact hash or hash prefix.
312 # Any other type of symbolic name that Fossil extracts from
313 artifacts.
314
315 <div style="height:50em" id="this-space-intentionally-left-blank"></div>
316

Keyboard Shortcuts

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