Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Make sure the check-in manifest of a merge child does not include a +close tag referring to the leaf check-in on a private branch, so as not to generate a missing artifact reference on repository clones without that private branch. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | private-branches |
Files: | files | file ages | folders |
SHA3-256: |
8268c5dafba8acdf6ca7a24fbd49a946 |
User & Date: | florian 2019-09-04 08:46:00 |
References
2020-04-22
| ||
11:43 | Update commit [8268c5dafb] to allow the --integrate flag when merging private branches, but postpone the closing leaves of private branches. ... (check-in: 6b6c09c5 user: florian tags: private-branches) | |
Context
2019-09-04
| ||
09:09 | Update the 'commit --private' command to only apply default branch name ("private") and color ("orange") if not specified otherwise on the command-line, and if the parent is not already private, to simplify the management of private branches with distinct names. ... (check-in: 836a85cb user: florian tags: private-branches) | |
08:46 | Make sure the check-in manifest of a merge child does not include a +close tag referring to the leaf check-in on a private branch, so as not to generate a missing artifact reference on repository clones without that private branch. ... (check-in: 8268c5da user: florian tags: private-branches) | |
08:32 | Update the 'branch new' command to track the status of private branches in the PRIVATE table, instead of using +private tags. ... (check-in: 70849e76 user: florian tags: private-branches) | |
Changes
Changes to src/checkin.c.
︙ | ︙ | |||
1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 | " WHERE id %s ORDER BY 1", p->integrateFlag ? "IN(0,-4)" : "=(-4)"); while( db_step(&q)==SQLITE_ROW ){ const char *zIntegrateUuid = db_column_text(&q, 0); int rid = db_column_int(&q, 1); if( is_a_leaf(rid) && !db_exists("SELECT 1 FROM tagxref " " WHERE tagid=%d AND rid=%d AND tagtype>0", TAG_CLOSED, rid)){ blob_appendf(pOut, "T +closed %s\n", zIntegrateUuid); } } db_finalize(&q); if( p->azTag ){ for(i=0; p->azTag[i]; i++){ | > > > > > > > > | 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 | " WHERE id %s ORDER BY 1", p->integrateFlag ? "IN(0,-4)" : "=(-4)"); while( db_step(&q)==SQLITE_ROW ){ const char *zIntegrateUuid = db_column_text(&q, 0); int rid = db_column_int(&q, 1); if( is_a_leaf(rid) && !db_exists("SELECT 1 FROM tagxref " " WHERE tagid=%d AND rid=%d AND tagtype>0", TAG_CLOSED, rid)){ #if 0 /* Make sure the check-in manifest of the resulting merge child does not ** include a +close tag referring to the leaf check-in on a private ** branch, so as not to generate a missing artifact reference on ** repository clones without that private branch. The merge command ** should have dropped the --integrate option, at this point. */ assert( !content_is_private(rid) ); #endif blob_appendf(pOut, "T +closed %s\n", zIntegrateUuid); } } db_finalize(&q); if( p->azTag ){ for(i=0; p->azTag[i]; i++){ |
︙ | ︙ |
Changes to src/merge.c.
︙ | ︙ | |||
387 388 389 390 391 392 393 394 395 396 397 398 399 400 | fossil_print("Merge skipped because it is a no-op. " " Use --force to override.\n"); return; } if( integrateFlag && !is_a_leaf(mid)){ fossil_warning("ignoring --integrate: %s is not a leaf", g.argv[2]); integrateFlag = 0; } if( verboseFlag ){ print_checkin_description(mid, 12, integrateFlag ? "integrate:" : "merge-from:"); print_checkin_description(pid, 12, "baseline:"); } vfile_check_signature(vid, CKSIG_ENOTFILE); | > > > > > > > | 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 | fossil_print("Merge skipped because it is a no-op. " " Use --force to override.\n"); return; } if( integrateFlag && !is_a_leaf(mid)){ fossil_warning("ignoring --integrate: %s is not a leaf", g.argv[2]); integrateFlag = 0; } if( integrateFlag && content_is_private(mid) ){ fossil_warning( "ignoring --integrate: %s is on a private branch" "\n Use \"fossil amend --close\" (after commit) to close the leaf.", g.argv[2]); integrateFlag = 0; } if( verboseFlag ){ print_checkin_description(mid, 12, integrateFlag ? "integrate:" : "merge-from:"); print_checkin_description(pid, 12, "baseline:"); } vfile_check_signature(vid, CKSIG_ENOTFILE); |
︙ | ︙ |