@ibgib/vcs-gib 0.0.30 → 0.0.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AUTO-GENERATED-version.d.mts +1 -1
- package/dist/AUTO-GENERATED-version.mjs +1 -1
- package/dist/bootstrap/node-bootstrap.mjs +1 -1
- package/dist/bootstrap/node-bootstrap.mjs.map +1 -1
- package/dist/cli/commands/add-cmd.d.mts +2 -3
- package/dist/cli/commands/add-cmd.d.mts.map +1 -1
- package/dist/cli/commands/add-cmd.mjs +30 -283
- package/dist/cli/commands/add-cmd.mjs.map +1 -1
- package/dist/cli/commands/branch-cmd.d.mts +8 -8
- package/dist/cli/commands/branch-cmd.d.mts.map +1 -1
- package/dist/cli/commands/branch-cmd.mjs +45 -176
- package/dist/cli/commands/branch-cmd.mjs.map +1 -1
- package/dist/cli/commands/checkout-cmd.d.mts +2 -4
- package/dist/cli/commands/checkout-cmd.d.mts.map +1 -1
- package/dist/cli/commands/checkout-cmd.mjs +31 -110
- package/dist/cli/commands/checkout-cmd.mjs.map +1 -1
- package/dist/cli/commands/commit-cmd.d.mts +7 -8
- package/dist/cli/commands/commit-cmd.d.mts.map +1 -1
- package/dist/cli/commands/commit-cmd.mjs +40 -390
- package/dist/cli/commands/commit-cmd.mjs.map +1 -1
- package/dist/cli/commands/generate-comment-cmd.d.mts.map +1 -1
- package/dist/cli/commands/generate-comment-cmd.mjs +5 -2
- package/dist/cli/commands/generate-comment-cmd.mjs.map +1 -1
- package/dist/cli/commands/init-cmd.d.mts +2 -2
- package/dist/cli/commands/init-cmd.d.mts.map +1 -1
- package/dist/cli/commands/init-cmd.mjs +20 -70
- package/dist/cli/commands/init-cmd.mjs.map +1 -1
- package/dist/cli/commands/log-cmd.d.mts +2 -3
- package/dist/cli/commands/log-cmd.d.mts.map +1 -1
- package/dist/cli/commands/log-cmd.mjs +42 -271
- package/dist/cli/commands/log-cmd.mjs.map +1 -1
- package/dist/cli/commands/merge-cmd.d.mts +3 -17
- package/dist/cli/commands/merge-cmd.d.mts.map +1 -1
- package/dist/cli/commands/merge-cmd.mjs +32 -218
- package/dist/cli/commands/merge-cmd.mjs.map +1 -1
- package/dist/cli/commands/reset-cmd.d.mts +1 -1
- package/dist/cli/commands/reset-cmd.d.mts.map +1 -1
- package/dist/cli/commands/reset-cmd.mjs +17 -19
- package/dist/cli/commands/reset-cmd.mjs.map +1 -1
- package/dist/cli/commands/restore-cmd.d.mts +8 -7
- package/dist/cli/commands/restore-cmd.d.mts.map +1 -1
- package/dist/cli/commands/restore-cmd.mjs +44 -62
- package/dist/cli/commands/restore-cmd.mjs.map +1 -1
- package/dist/cli/commands/status-cmd.d.mts +2 -2
- package/dist/cli/commands/status-cmd.d.mts.map +1 -1
- package/dist/cli/commands/status-cmd.mjs +63 -62
- package/dist/cli/commands/status-cmd.mjs.map +1 -1
- package/dist/cli/vcs-projection-helper.d.mts +23 -0
- package/dist/cli/vcs-projection-helper.d.mts.map +1 -0
- package/dist/cli/vcs-projection-helper.mjs +91 -0
- package/dist/cli/vcs-projection-helper.mjs.map +1 -0
- package/dist/test/test-helpers.d.mts +2 -2
- package/dist/test/test-helpers.d.mts.map +1 -1
- package/package.json +3 -3
- package/src/AUTO-GENERATED-version.mts +1 -1
- package/src/bootstrap/node-bootstrap.mts +1 -1
- package/src/cli/cli-e2e.respec.mts +4 -4
- package/src/cli/commands/add-cmd.mts +32 -347
- package/src/cli/commands/branch-cmd.mts +56 -225
- package/src/cli/commands/checkout-cmd.mts +34 -138
- package/src/cli/commands/commit-cmd.mts +46 -473
- package/src/cli/commands/commit-log-cmd.respec.mts +11 -7
- package/src/cli/commands/generate-comment-cmd.mts +6 -2
- package/src/cli/commands/init-cmd.mts +20 -73
- package/src/cli/commands/log-cmd.mts +41 -331
- package/src/cli/commands/merge-cmd.mts +32 -252
- package/src/cli/commands/reset-cmd.mts +17 -19
- package/src/cli/commands/restore-cmd.mts +52 -72
- package/src/cli/commands/status-add-cmd.respec.mts +3 -3
- package/src/cli/commands/status-cmd.mts +68 -63
- package/src/cli/vcs-projection-helper.mts +112 -0
- package/src/engine/branch/branch-space.respec.mts +5 -5
- package/src/engine/merge/b2tfs-sync-comments.respec.mts +4 -4
- package/src/test/test-helpers.mts +2 -2
- package/src/vcs-gib.respec.mts +11 -8
- package/tsconfig.test.tsbuildinfo +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/dist/engine/branch/branch-graph-helper.d.mts +0 -28
- package/dist/engine/branch/branch-graph-helper.d.mts.map +0 -1
- package/dist/engine/branch/branch-graph-helper.mjs +0 -81
- package/dist/engine/branch/branch-graph-helper.mjs.map +0 -1
- package/dist/engine/branch/branch-helper.d.mts +0 -40
- package/dist/engine/branch/branch-helper.d.mts.map +0 -1
- package/dist/engine/branch/branch-helper.mjs +0 -78
- package/dist/engine/branch/branch-helper.mjs.map +0 -1
- package/dist/engine/branch/branch-space-helper.d.mts +0 -23
- package/dist/engine/branch/branch-space-helper.d.mts.map +0 -1
- package/dist/engine/branch/branch-space-helper.mjs +0 -78
- package/dist/engine/branch/branch-space-helper.mjs.map +0 -1
- package/dist/engine/branch/branch-types.d.mts +0 -26
- package/dist/engine/branch/branch-types.d.mts.map +0 -1
- package/dist/engine/branch/branch-types.mjs +0 -7
- package/dist/engine/branch/branch-types.mjs.map +0 -1
- package/dist/engine/diff/line-diff-helper.d.mts +0 -76
- package/dist/engine/diff/line-diff-helper.d.mts.map +0 -1
- package/dist/engine/diff/line-diff-helper.mjs +0 -144
- package/dist/engine/diff/line-diff-helper.mjs.map +0 -1
- package/dist/engine/filter/glob-helper.d.mts +0 -51
- package/dist/engine/filter/glob-helper.d.mts.map +0 -1
- package/dist/engine/filter/glob-helper.mjs +0 -132
- package/dist/engine/filter/glob-helper.mjs.map +0 -1
- package/dist/engine/index/index-helper.d.mts +0 -113
- package/dist/engine/index/index-helper.d.mts.map +0 -1
- package/dist/engine/index/index-helper.mjs +0 -533
- package/dist/engine/index/index-helper.mjs.map +0 -1
- package/dist/engine/index/index-types.d.mts +0 -63
- package/dist/engine/index/index-types.d.mts.map +0 -1
- package/dist/engine/index/index-types.mjs +0 -7
- package/dist/engine/index/index-types.mjs.map +0 -1
- package/dist/engine/item/item-atom-helper.d.mts +0 -20
- package/dist/engine/item/item-atom-helper.d.mts.map +0 -1
- package/dist/engine/item/item-atom-helper.mjs +0 -30
- package/dist/engine/item/item-atom-helper.mjs.map +0 -1
- package/dist/engine/item/item-helper.d.mts +0 -94
- package/dist/engine/item/item-helper.d.mts.map +0 -1
- package/dist/engine/item/item-helper.mjs +0 -424
- package/dist/engine/item/item-helper.mjs.map +0 -1
- package/dist/engine/item/item-types.d.mts +0 -128
- package/dist/engine/item/item-types.d.mts.map +0 -1
- package/dist/engine/item/item-types.mjs +0 -16
- package/dist/engine/item/item-types.mjs.map +0 -1
- package/dist/engine/merge/b2tfs-3way-graft-strategy.d.mts +0 -74
- package/dist/engine/merge/b2tfs-3way-graft-strategy.d.mts.map +0 -1
- package/dist/engine/merge/b2tfs-3way-graft-strategy.mjs +0 -570
- package/dist/engine/merge/b2tfs-3way-graft-strategy.mjs.map +0 -1
- package/dist/engine/merge/b2tfs-3way-graft-types.d.mts +0 -34
- package/dist/engine/merge/b2tfs-3way-graft-types.d.mts.map +0 -1
- package/dist/engine/merge/b2tfs-3way-graft-types.mjs +0 -2
- package/dist/engine/merge/b2tfs-3way-graft-types.mjs.map +0 -1
- package/dist/engine/status/status-helper.d.mts +0 -90
- package/dist/engine/status/status-helper.d.mts.map +0 -1
- package/dist/engine/status/status-helper.mjs +0 -286
- package/dist/engine/status/status-helper.mjs.map +0 -1
- package/src/engine/branch/branch-graph-helper.mts +0 -117
- package/src/engine/branch/branch-helper.mts +0 -112
- package/src/engine/branch/branch-space-helper.mts +0 -110
- package/src/engine/branch/branch-types.mts +0 -29
- package/src/engine/diff/line-diff-helper.mts +0 -210
- package/src/engine/diff/line-diff-helper.respec.mts +0 -84
- package/src/engine/filter/glob-helper.mts +0 -165
- package/src/engine/filter/glob-helper.respec.mts +0 -94
- package/src/engine/index/index-helper.mts +0 -705
- package/src/engine/index/index-types.mts +0 -66
- package/src/engine/item/item-atom-helper.mts +0 -30
- package/src/engine/item/item-helper.mts +0 -544
- package/src/engine/item/item-types.mts +0 -137
- package/src/engine/item/item.respec.mts +0 -92
- package/src/engine/merge/b2tfs-3way-graft-strategy.mts +0 -630
- package/src/engine/merge/b2tfs-3way-graft-strategy.respec.mts +0 -346
- package/src/engine/merge/b2tfs-3way-graft-types.mts +0 -34
- package/src/engine/status/status-helper.mts +0 -383
|
@@ -1,21 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module init-cmd
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* CLI command handler for `vcs init [targetDir]`.
|
|
5
|
+
* Bootstraps Node environment, creates disk directories, and delegates to executeVcsInit.
|
|
6
6
|
*/
|
|
7
7
|
import path from 'node:path';
|
|
8
8
|
import fs from 'node:fs/promises';
|
|
9
|
-
import { extractErrorMsg
|
|
10
|
-
import {
|
|
11
|
-
import { ROOT } from '@ibgib/ts-gib/dist/V1/constants.mjs';
|
|
12
|
-
import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
|
|
13
|
-
import { persistTransformResult } from '@ibgib/core-gib/dist/witness/space/space-helper.mjs';
|
|
9
|
+
import { extractErrorMsg } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
10
|
+
import { executeVcsInit } from '@ibgib/core-gib/dist/vcs/commands/init-cmd.mjs';
|
|
14
11
|
import { bootstrapVcsMetaspace } from '../../bootstrap/node-bootstrap.mjs';
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import { getOrCreateBranchSpace } from '../../engine/branch/branch-space-helper.mjs';
|
|
18
|
-
import { createB2tFSIndexIbGib, writeVcsIndexProjection } from '../../engine/index/index-helper.mjs';
|
|
12
|
+
import { getOrCreateBranchSpace } from '@ibgib/node-gib/dist/vcs/branch-space-helper.mjs';
|
|
13
|
+
import { writeVcsIndexProjectionToDisk } from '../vcs-projection-helper.mjs';
|
|
19
14
|
import { GLOBAL_LOG_A_LOT } from '../../vcs-gib-constants.mjs';
|
|
20
15
|
const lcFile = `[init-cmd]`;
|
|
21
16
|
const logalot = GLOBAL_LOG_A_LOT;
|
|
@@ -30,7 +25,7 @@ export async function executeInitCmd({ targetDir = process.cwd(), vcsFolderName
|
|
|
30
25
|
// Create target repository folder if it doesn't exist
|
|
31
26
|
await fs.mkdir(absTargetDir, { recursive: true });
|
|
32
27
|
// Bootstrap Metaspace
|
|
33
|
-
const { metaspace } = await bootstrapVcsMetaspace({
|
|
28
|
+
const { metaspace, localSpace } = await bootstrapVcsMetaspace({
|
|
34
29
|
repoPath: absTargetDir,
|
|
35
30
|
vcsFolderName,
|
|
36
31
|
defaultSpaceName: `vcs_${path.basename(absTargetDir).replace(/[^a-zA-Z0-9_\-]/g, '_')}`,
|
|
@@ -42,77 +37,32 @@ export async function executeInitCmd({ targetDir = process.cwd(), vcsFolderName
|
|
|
42
37
|
branchName: defaultBranchName,
|
|
43
38
|
});
|
|
44
39
|
const folderName = path.basename(absTargetDir) || 'root';
|
|
45
|
-
const
|
|
46
|
-
// 1. Create root folder B2tFS item inside b2s_main space
|
|
47
|
-
const rootItemRes = await Factory_V1.firstGen({
|
|
48
|
-
parentIbGib: ROOT,
|
|
49
|
-
ib: getB2tFSItemIb('folder', folderName, rootNameHash),
|
|
50
|
-
data: {
|
|
51
|
-
name: folderName,
|
|
52
|
-
nameHash: rootNameHash,
|
|
53
|
-
fsType: 'folder',
|
|
54
|
-
diffTransactionId: await getUUID(),
|
|
55
|
-
uuid: await getUUID(),
|
|
56
|
-
classname: 'B2tFSItemIbGib_V1',
|
|
57
|
-
},
|
|
58
|
-
});
|
|
59
|
-
const rootItem = rootItemRes.newIbGib;
|
|
60
|
-
await persistTransformResult({ resTransform: rootItemRes, space: branchSpace });
|
|
61
|
-
await metaspace.registerNewIbGib({ ibGib: rootItem, space: branchSpace });
|
|
62
|
-
// 2. Create default branch pointing to root folder inside b2s_main space
|
|
63
|
-
const branchIbGib = await createB2tFSBranchIbGib({
|
|
64
|
-
branchName: defaultBranchName,
|
|
65
|
-
rootItem,
|
|
66
|
-
space: branchSpace,
|
|
67
|
-
metaspace,
|
|
68
|
-
});
|
|
69
|
-
const branchAddr = getIbGibAddr({ ibGib: branchIbGib });
|
|
70
|
-
// 3. Create space index meta object stored inside b2s_main space
|
|
71
|
-
const indexIbGib = await createB2tFSIndexIbGib({
|
|
72
|
-
spaceId,
|
|
73
|
-
activeSpaceId: getB2tFSBranchSpaceName(defaultBranchName),
|
|
74
|
-
activeBranch: defaultBranchName,
|
|
75
|
-
space: branchSpace,
|
|
40
|
+
const initRes = await executeVcsInit({
|
|
76
41
|
metaspace,
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
indexIbGib,
|
|
42
|
+
branchSpace,
|
|
43
|
+
localSpace,
|
|
44
|
+
rootFolderName: folderName,
|
|
45
|
+
defaultBranchName,
|
|
46
|
+
vcsFolderName,
|
|
83
47
|
});
|
|
84
|
-
|
|
85
|
-
try {
|
|
86
|
-
await fs.rm(path.join(vcsPath, 'vcs_state.json'), { force: true });
|
|
87
|
-
}
|
|
88
|
-
catch {
|
|
89
|
-
// Ignore if missing
|
|
90
|
-
}
|
|
91
|
-
try {
|
|
92
|
-
await fs.rm(path.join(vcsPath, 'staging.json'), { force: true });
|
|
93
|
-
}
|
|
94
|
-
catch {
|
|
95
|
-
// Ignore if missing
|
|
96
|
-
}
|
|
48
|
+
await writeVcsIndexProjectionToDisk({ vcsPath, indexIbGib: initRes.indexIbGib });
|
|
97
49
|
if (!quiet) {
|
|
98
|
-
console.log(`Initialized empty ibgib repository in ${vcsPath} (I:
|
|
99
|
-
console.log(` Branch: ${defaultBranchName}`);
|
|
100
|
-
console.log(` Root Item: ${rootItem.ib}`);
|
|
50
|
+
console.log(`Initialized empty ibgib repository in ${vcsPath} (branch: ${defaultBranchName}) (I: 3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f)`);
|
|
101
51
|
}
|
|
102
52
|
return {
|
|
103
53
|
vcsPath,
|
|
104
|
-
spaceId,
|
|
105
|
-
branchName:
|
|
106
|
-
rootItemIb: rootItem.ib,
|
|
54
|
+
spaceId: initRes.spaceId,
|
|
55
|
+
branchName: initRes.branchName,
|
|
56
|
+
rootItemIb: initRes.rootItem.ib,
|
|
107
57
|
};
|
|
108
58
|
}
|
|
109
59
|
catch (error) {
|
|
110
|
-
console.error(`${lc} ${extractErrorMsg(error)} (E:
|
|
60
|
+
console.error(`${lc} ${extractErrorMsg(error)} (E: 1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d)`);
|
|
111
61
|
throw error;
|
|
112
62
|
}
|
|
113
63
|
finally {
|
|
114
64
|
if (logalot) {
|
|
115
|
-
console.log(`${lc} complete. (I:
|
|
65
|
+
console.log(`${lc} complete. (I: 2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e)`);
|
|
116
66
|
}
|
|
117
67
|
}
|
|
118
68
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-cmd.mjs","sourceRoot":"","sources":["../../../src/cli/commands/init-cmd.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"init-cmd.mjs","sourceRoot":"","sources":["../../../src/cli/commands/init-cmd.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAEhF,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,kDAAkD,CAAC;AAC1F,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,MAAM,MAAM,GAAG,YAAY,CAAC;AAC5B,MAAM,OAAO,GAAG,gBAAgB,CAAC;AAgBjC,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EACjC,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,EACzB,aAAa,GAAG,SAAS,EACzB,iBAAiB,GAAG,MAAM,EAC1B,KAAK,GAAG,KAAK,GAChB,GAAgB,EAAE;IACf,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,cAAc,CAAC,IAAI,GAAG,CAAC;IAC/C,IAAI,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,oDAAoD,CAAC,CAAC;QAC3E,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;QAEvD,sDAAsD;QACtD,MAAM,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAElD,sBAAsB;QACtB,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,MAAM,qBAAqB,CAAC;YAC1D,QAAQ,EAAE,YAAY;YACtB,aAAa;YACb,gBAAgB,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,EAAE;SAC1F,CAAC,CAAC;QAEH,mCAAmC;QACnC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,MAAM,sBAAsB,CAAC;YACjE,SAAS;YACT,OAAO;YACP,UAAU,EAAE,iBAAiB;SAChC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC;QAEzD,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC;YACjC,SAAS;YACT,WAAW;YACX,UAAU;YACV,cAAc,EAAE,UAAU;YAC1B,iBAAiB;YACjB,aAAa;SAChB,CAAC,CAAC;QAEH,MAAM,6BAA6B,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QAEjF,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,CAAC,GAAG,CAAC,yCAAyC,OAAO,aAAa,iBAAiB,yCAAyC,CAAC,CAAC;QACzI,CAAC;QAED,OAAO;YACH,OAAO;YACP,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE;SAClC,CAAC;IACN,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,eAAe,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;QACvF,MAAM,KAAK,CAAC;IAChB,CAAC;YAAS,CAAC;QACP,IAAI,OAAO,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,kDAAkD,CAAC,CAAC;QACzE,CAAC;IACL,CAAC;AACL,CAAC"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module log-cmd
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* walks branch or item timeline history backward, and displays formatted commit and comment history.
|
|
4
|
+
* CLI command handler for `vcs log`.
|
|
5
|
+
* Delegates to executeVcsLog and formats console output.
|
|
7
6
|
*/
|
|
8
7
|
export interface VcsLogItem {
|
|
9
8
|
branchAddr?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log-cmd.d.mts","sourceRoot":"","sources":["../../../src/cli/commands/log-cmd.mts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"log-cmd.d.mts","sourceRoot":"","sources":["../../../src/cli/commands/log-cmd.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAiBH,MAAM,WAAW,UAAU;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC1E;AAED,MAAM,WAAW,UAAU;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,UAAU,EAAE,CAAC;CACzB;AAED,wBAAsB,aAAa,CAAC,EAChC,SAAyB,EACzB,aAAyB,EACzB,QAAQ,EACR,WAAmB,EACnB,KAAa,GAChB,GAAE,UAAe,GAAG,OAAO,CAAC,YAAY,CAAC,CAwGzC"}
|
|
@@ -1,20 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module log-cmd
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* walks branch or item timeline history backward, and displays formatted commit and comment history.
|
|
4
|
+
* CLI command handler for `vcs log`.
|
|
5
|
+
* Delegates to executeVcsLog and formats console output.
|
|
7
6
|
*/
|
|
8
7
|
import path from 'node:path';
|
|
9
8
|
import fs from 'node:fs/promises';
|
|
10
9
|
import { extractErrorMsg } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
11
|
-
import {
|
|
10
|
+
import { executeVcsLog } from '@ibgib/core-gib/dist/vcs/commands/log-cmd.mjs';
|
|
11
|
+
import { resolveContextualBranchName } from '@ibgib/core-gib/dist/vcs/branch/branch-helper.mjs';
|
|
12
12
|
import { bootstrapVcsMetaspace } from '../../bootstrap/node-bootstrap.mjs';
|
|
13
|
-
import { getOrCreateBranchSpace } from '
|
|
14
|
-
import {
|
|
15
|
-
import { getIbGibWithMetaspaceFallback } from '../../engine/item/item-helper.mjs';
|
|
16
|
-
import { B2TFS_CHILD_ITEM_REL8N_NAME } from '../../engine/item/item-types.mjs';
|
|
17
|
-
import { getB2tFSIndexIbGib } from '../../engine/index/index-helper.mjs';
|
|
13
|
+
import { getOrCreateBranchSpace } from '@ibgib/node-gib/dist/vcs/branch-space-helper.mjs';
|
|
14
|
+
import { readVcsIndexProjectionFromDisk } from '../vcs-projection-helper.mjs';
|
|
18
15
|
import { GLOBAL_LOG_A_LOT } from '../../vcs-gib-constants.mjs';
|
|
19
16
|
const lcFile = `[log-cmd]`;
|
|
20
17
|
const logalot = GLOBAL_LOG_A_LOT;
|
|
@@ -37,7 +34,7 @@ export async function executeLogCmd({ targetDir = process.cwd(), vcsFolderName =
|
|
|
37
34
|
throw new Error(`Not an ibgib repository (directory ${vcsPath} does not exist) (E: 2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f)`);
|
|
38
35
|
}
|
|
39
36
|
// 1. Fetch authoritative B2tFSIndexIbGib_V1 directly from localSpace
|
|
40
|
-
const indexIbGib = await
|
|
37
|
+
const indexIbGib = await readVcsIndexProjectionFromDisk({ vcsPath, space: localSpace });
|
|
41
38
|
if (!indexIbGib) {
|
|
42
39
|
throw new Error(`Repository index B2tFSIndexIbGib_V1 not found in localSpace (E: 3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a)`);
|
|
43
40
|
}
|
|
@@ -52,89 +49,20 @@ export async function executeLogCmd({ targetDir = process.cwd(), vcsFolderName =
|
|
|
52
49
|
vcsPath,
|
|
53
50
|
branchName,
|
|
54
51
|
});
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
const matchingBranches = branchIbGibs.filter(b => b?.data?.name === branchName);
|
|
71
|
-
const activeBranchIbGib = matchingBranches.sort((a, b) => (b.data?.n || 0) - (a.data?.n || 0))[0]
|
|
72
|
-
|| branchIbGibs.at(-1);
|
|
73
|
-
if (activeBranchIbGib) {
|
|
74
|
-
currBranchAddr = getIbGibAddr({ ibGib: activeBranchIbGib });
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
const commits = [];
|
|
78
|
-
// #region File-Specific Log Mode (vcs log <filePath>)
|
|
79
|
-
if (filePath) {
|
|
80
|
-
const normalizedRelPath = path.relative(repoRoot, path.resolve(absTargetDir, filePath)).replace(/\\/g, '/');
|
|
81
|
-
// Find current root item
|
|
82
|
-
const branchIbGib = currBranchAddr
|
|
83
|
-
? await getIbGibWithMetaspaceFallback({ addr: currBranchAddr, space: activeSpace, metaspace })
|
|
84
|
-
: undefined;
|
|
85
|
-
const rootItemAddr = branchIbGib?.rel8ns?.b2tFS_item?.at(-1) || branchIbGib?.rel8ns?.b2tfs_item?.at(-1);
|
|
86
|
-
if (!rootItemAddr) {
|
|
87
|
-
throw new Error(`No root item found on branch ${branchName} (E: 4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b)`);
|
|
88
|
-
}
|
|
89
|
-
const targetItem = await logCmd_findItemByPath({
|
|
90
|
-
rootItemAddr,
|
|
91
|
-
targetRelPath: normalizedRelPath,
|
|
92
|
-
space: activeSpace,
|
|
93
|
-
metaspace,
|
|
94
|
-
});
|
|
95
|
-
if (!targetItem) {
|
|
96
|
-
throw new Error(`Path '${normalizedRelPath}' not found in active branch snapshot (E: 5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c)`);
|
|
97
|
-
}
|
|
98
|
-
// Walk target item timeline history backward
|
|
99
|
-
const visitedItemAddrs = new Set();
|
|
100
|
-
let currItem = targetItem;
|
|
101
|
-
while (currItem) {
|
|
102
|
-
const itemAddr = getIbGibAddr({ ibGib: currItem });
|
|
103
|
-
if (visitedItemAddrs.has(itemAddr)) {
|
|
104
|
-
break;
|
|
105
|
-
}
|
|
106
|
-
visitedItemAddrs.add(itemAddr);
|
|
107
|
-
const commentAddrs = currItem.rel8ns?.comment || [];
|
|
108
|
-
for (const cAddr of commentAddrs) {
|
|
109
|
-
const commentIbGib = await getIbGibWithMetaspaceFallback({
|
|
110
|
-
addr: cAddr,
|
|
111
|
-
space: activeSpace,
|
|
112
|
-
metaspace,
|
|
113
|
-
});
|
|
114
|
-
if (commentIbGib) {
|
|
115
|
-
commits.push({
|
|
116
|
-
commitAddr: itemAddr,
|
|
117
|
-
commentAddr: cAddr,
|
|
118
|
-
message: commentIbGib.data?.text || '',
|
|
119
|
-
timestamp: commentIbGib.data?.textTimestamp || commentIbGib.data?.timestamp || '',
|
|
120
|
-
author: 'vcs-user',
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
const pastAddr = currItem.rel8ns?.past?.at(0) || currItem.rel8ns?.ancestor?.at(0);
|
|
125
|
-
if (pastAddr) {
|
|
126
|
-
currItem = await getIbGibWithMetaspaceFallback({
|
|
127
|
-
addr: pastAddr,
|
|
128
|
-
space: activeSpace,
|
|
129
|
-
metaspace,
|
|
130
|
-
});
|
|
131
|
-
}
|
|
132
|
-
else {
|
|
133
|
-
currItem = undefined;
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
if (!quiet) {
|
|
137
|
-
console.log(`File: ${normalizedRelPath} (branch: ${branchName}) (I: 6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d)`);
|
|
52
|
+
const logRes = await executeVcsLog({
|
|
53
|
+
metaspace,
|
|
54
|
+
localSpace,
|
|
55
|
+
activeBranchSpace: activeSpace,
|
|
56
|
+
indexIbGib,
|
|
57
|
+
filePath,
|
|
58
|
+
allComments,
|
|
59
|
+
repoRoot,
|
|
60
|
+
targetDir: absTargetDir,
|
|
61
|
+
});
|
|
62
|
+
const commits = logRes.commits;
|
|
63
|
+
if (!quiet) {
|
|
64
|
+
if (logRes.targetPath) {
|
|
65
|
+
console.log(`File: ${logRes.targetPath} (branch: ${logRes.branchName}) (I: 6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d)`);
|
|
138
66
|
if (commits.length === 0) {
|
|
139
67
|
console.log('No comments found for this file.');
|
|
140
68
|
}
|
|
@@ -148,113 +76,36 @@ export async function executeLogCmd({ targetDir = process.cwd(), vcsFolderName =
|
|
|
148
76
|
}
|
|
149
77
|
}
|
|
150
78
|
}
|
|
151
|
-
return {
|
|
152
|
-
branchName,
|
|
153
|
-
targetPath: normalizedRelPath,
|
|
154
|
-
commits,
|
|
155
|
-
};
|
|
156
|
-
}
|
|
157
|
-
// #endregion File-Specific Log Mode
|
|
158
|
-
// #region Standard Branch Log Mode
|
|
159
|
-
const visitedAddrs = new Set();
|
|
160
|
-
while (currBranchAddr && !visitedAddrs.has(currBranchAddr)) {
|
|
161
|
-
visitedAddrs.add(currBranchAddr);
|
|
162
|
-
const branchIbGib = await getIbGibWithMetaspaceFallback({
|
|
163
|
-
addr: currBranchAddr,
|
|
164
|
-
space: activeSpace,
|
|
165
|
-
metaspace,
|
|
166
|
-
});
|
|
167
|
-
if (!branchIbGib) {
|
|
168
|
-
break;
|
|
169
|
-
}
|
|
170
|
-
const rootItemAddr = branchIbGib.rel8ns?.b2tFS_item?.at(-1) || branchIbGib.rel8ns?.b2tfs_item?.at(-1);
|
|
171
|
-
let rootItem;
|
|
172
|
-
if (rootItemAddr) {
|
|
173
|
-
rootItem = await getIbGibWithMetaspaceFallback({
|
|
174
|
-
addr: rootItemAddr,
|
|
175
|
-
space: activeSpace,
|
|
176
|
-
metaspace,
|
|
177
|
-
});
|
|
178
|
-
}
|
|
179
|
-
let commentAddrs = [
|
|
180
|
-
...(branchIbGib.rel8ns?.comment || []),
|
|
181
|
-
...(rootItem?.rel8ns?.comment || []),
|
|
182
|
-
];
|
|
183
|
-
// Deduplicate
|
|
184
|
-
commentAddrs = Array.from(new Set(commentAddrs));
|
|
185
|
-
let message = '';
|
|
186
|
-
let timestamp = branchIbGib.data?.committedAt || '';
|
|
187
|
-
// If branch has a direct comment, use that first, otherwise use the last added comment on root item
|
|
188
|
-
let primaryCommentAddr = branchIbGib.rel8ns?.comment?.at(-1) || rootItem?.rel8ns?.comment?.at(-1) || commentAddrs.at(0);
|
|
189
|
-
if (primaryCommentAddr) {
|
|
190
|
-
const commentIbGib = await getIbGibWithMetaspaceFallback({
|
|
191
|
-
addr: primaryCommentAddr,
|
|
192
|
-
space: activeSpace,
|
|
193
|
-
metaspace,
|
|
194
|
-
});
|
|
195
|
-
if (commentIbGib?.data?.text) {
|
|
196
|
-
message = commentIbGib.data.text;
|
|
197
|
-
}
|
|
198
|
-
if (commentIbGib?.data?.textTimestamp || commentIbGib?.data?.timestamp) {
|
|
199
|
-
timestamp = commentIbGib.data.textTimestamp || commentIbGib.data.timestamp || timestamp;
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
const committedPaths = branchIbGib.data?.committedPaths || [];
|
|
203
|
-
const itemComments = [];
|
|
204
|
-
if (allComments && rootItem) {
|
|
205
|
-
await logCmd_collectAllItemComments({
|
|
206
|
-
item: rootItem,
|
|
207
|
-
space: activeSpace,
|
|
208
|
-
metaspace,
|
|
209
|
-
currentRelPath: '',
|
|
210
|
-
outComments: itemComments,
|
|
211
|
-
});
|
|
212
|
-
}
|
|
213
|
-
if (message || primaryCommentAddr || (committedPaths && committedPaths.length > 0)) {
|
|
214
|
-
commits.push({
|
|
215
|
-
branchAddr: currBranchAddr,
|
|
216
|
-
commitAddr: currBranchAddr,
|
|
217
|
-
commentAddr: primaryCommentAddr,
|
|
218
|
-
message: message || '(no commit message)',
|
|
219
|
-
timestamp,
|
|
220
|
-
author: 'vcs-user',
|
|
221
|
-
rootItemAddr,
|
|
222
|
-
committedPaths,
|
|
223
|
-
itemComments: itemComments.length > 0 ? itemComments : undefined,
|
|
224
|
-
});
|
|
225
|
-
}
|
|
226
|
-
// Move to previous branch node in timeline
|
|
227
|
-
currBranchAddr = branchIbGib.rel8ns?.past?.at(0) || branchIbGib.rel8ns?.ancestor?.at(0);
|
|
228
|
-
}
|
|
229
|
-
if (!quiet) {
|
|
230
|
-
console.log(`Branch: ${branchName} (I: 4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b)`);
|
|
231
|
-
if (commits.length === 0) {
|
|
232
|
-
console.log('No commits yet.');
|
|
233
|
-
}
|
|
234
79
|
else {
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
console.log(
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
console.log(
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
console.log(
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
80
|
+
console.log(`Branch: ${logRes.branchName} (I: 4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b)`);
|
|
81
|
+
if (commits.length === 0) {
|
|
82
|
+
console.log('No commits yet.');
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
for (const commit of commits) {
|
|
86
|
+
console.log(`\ncommit ${commit.commitAddr}`);
|
|
87
|
+
console.log(`Author: ${commit.author}`);
|
|
88
|
+
console.log(`Date: ${commit.timestamp}`);
|
|
89
|
+
console.log(`\n ${commit.message}\n`);
|
|
90
|
+
if (commit.committedPaths && commit.committedPaths.length > 0) {
|
|
91
|
+
console.log(`Changed: ${commit.committedPaths.join(', ')}`);
|
|
92
|
+
}
|
|
93
|
+
if (commit.itemComments && commit.itemComments.length > 0) {
|
|
94
|
+
console.log('Item Comments:');
|
|
95
|
+
for (const ic of commit.itemComments) {
|
|
96
|
+
const label = ic.name ? `${ic.path} (${ic.name})` : ic.path;
|
|
97
|
+
console.log(` * [${label}]: ${ic.message}`);
|
|
98
|
+
}
|
|
248
99
|
}
|
|
249
100
|
}
|
|
250
101
|
}
|
|
251
102
|
}
|
|
252
103
|
}
|
|
253
104
|
return {
|
|
254
|
-
branchName,
|
|
105
|
+
branchName: logRes.branchName,
|
|
106
|
+
targetPath: logRes.targetPath,
|
|
255
107
|
commits,
|
|
256
108
|
};
|
|
257
|
-
// #endregion Standard Branch Log Mode
|
|
258
109
|
}
|
|
259
110
|
catch (error) {
|
|
260
111
|
console.error(`${lc} ${extractErrorMsg(error)} (E: 5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c)`);
|
|
@@ -266,84 +117,4 @@ export async function executeLogCmd({ targetDir = process.cwd(), vcsFolderName =
|
|
|
266
117
|
}
|
|
267
118
|
}
|
|
268
119
|
}
|
|
269
|
-
async function logCmd_findItemByPath({ rootItemAddr, targetRelPath, space, metaspace, }) {
|
|
270
|
-
const rootItem = await getIbGibWithMetaspaceFallback({
|
|
271
|
-
addr: rootItemAddr,
|
|
272
|
-
space,
|
|
273
|
-
metaspace,
|
|
274
|
-
});
|
|
275
|
-
if (!rootItem) {
|
|
276
|
-
return undefined;
|
|
277
|
-
}
|
|
278
|
-
if (!targetRelPath || targetRelPath === '.' || targetRelPath === '') {
|
|
279
|
-
return rootItem;
|
|
280
|
-
}
|
|
281
|
-
const segments = targetRelPath.split('/');
|
|
282
|
-
let currentItem = rootItem;
|
|
283
|
-
for (const segment of segments) {
|
|
284
|
-
if (currentItem.data?.fsType !== 'folder') {
|
|
285
|
-
return undefined;
|
|
286
|
-
}
|
|
287
|
-
const childAddrs = currentItem.rel8ns?.[B2TFS_CHILD_ITEM_REL8N_NAME] || [];
|
|
288
|
-
let nextItem;
|
|
289
|
-
for (const cAddr of childAddrs) {
|
|
290
|
-
const child = await getIbGibWithMetaspaceFallback({
|
|
291
|
-
addr: cAddr,
|
|
292
|
-
space,
|
|
293
|
-
metaspace,
|
|
294
|
-
});
|
|
295
|
-
if (child && child.data?.name === segment) {
|
|
296
|
-
nextItem = child;
|
|
297
|
-
break;
|
|
298
|
-
}
|
|
299
|
-
}
|
|
300
|
-
if (!nextItem) {
|
|
301
|
-
return undefined;
|
|
302
|
-
}
|
|
303
|
-
currentItem = nextItem;
|
|
304
|
-
}
|
|
305
|
-
return currentItem;
|
|
306
|
-
}
|
|
307
|
-
async function logCmd_collectAllItemComments({ item, space, metaspace, currentRelPath, outComments, }) {
|
|
308
|
-
if (!item || !item.data) {
|
|
309
|
-
return;
|
|
310
|
-
}
|
|
311
|
-
const itemComments = item.rel8ns?.comment || [];
|
|
312
|
-
for (const cAddr of itemComments) {
|
|
313
|
-
const commentIbGib = await getIbGibWithMetaspaceFallback({
|
|
314
|
-
addr: cAddr,
|
|
315
|
-
space,
|
|
316
|
-
metaspace,
|
|
317
|
-
});
|
|
318
|
-
if (commentIbGib && commentIbGib.data?.text) {
|
|
319
|
-
outComments.push({
|
|
320
|
-
path: currentRelPath || '(root)',
|
|
321
|
-
name: commentIbGib.data?.name,
|
|
322
|
-
message: commentIbGib.data.text,
|
|
323
|
-
});
|
|
324
|
-
}
|
|
325
|
-
}
|
|
326
|
-
if (item.data.fsType === 'folder') {
|
|
327
|
-
const childAddrs = item.rel8ns?.[B2TFS_CHILD_ITEM_REL8N_NAME] || [];
|
|
328
|
-
for (const childAddr of childAddrs) {
|
|
329
|
-
const childItem = await getIbGibWithMetaspaceFallback({
|
|
330
|
-
addr: childAddr,
|
|
331
|
-
space,
|
|
332
|
-
metaspace,
|
|
333
|
-
});
|
|
334
|
-
if (childItem && childItem.data) {
|
|
335
|
-
const childRel = currentRelPath
|
|
336
|
-
? `${currentRelPath}/${childItem.data.name}`
|
|
337
|
-
: childItem.data.name;
|
|
338
|
-
await logCmd_collectAllItemComments({
|
|
339
|
-
item: childItem,
|
|
340
|
-
space,
|
|
341
|
-
metaspace,
|
|
342
|
-
currentRelPath: childRel,
|
|
343
|
-
outComments,
|
|
344
|
-
});
|
|
345
|
-
}
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
|
-
}
|
|
349
120
|
//# sourceMappingURL=log-cmd.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log-cmd.mjs","sourceRoot":"","sources":["../../../src/cli/commands/log-cmd.mts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"log-cmd.mjs","sourceRoot":"","sources":["../../../src/cli/commands/log-cmd.mts"],"names":[],"mappings":"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"}
|
|
@@ -1,36 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module merge-cmd
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* Merges
|
|
6
|
-
* SyncSagaCoordinator sync and 3-way graft merge strategy.
|
|
7
|
-
* Projects merged branch snapshot onto the base branch physical worktree path.
|
|
8
|
-
*
|
|
9
|
-
* ## Terminology (matches standard git usage)
|
|
10
|
-
*
|
|
11
|
-
* * **base** branch / space — the branch currently checked out, the one being
|
|
12
|
-
* merged INTO (analogous to `ours` / `HEAD` in git)
|
|
13
|
-
* * **incoming** branch / space — the branch whose changes are being merged IN
|
|
14
|
-
* (analogous to `theirs` / the topic branch in git)
|
|
4
|
+
* CLI command handler for `vcs merge <branchName>`.
|
|
5
|
+
* Merges incoming branch into base branch and delegates to executeVcsMerge.
|
|
15
6
|
*/
|
|
16
7
|
export interface MergeCmdOpts {
|
|
17
|
-
/** The incoming branch name — the branch whose changes will be merged in. */
|
|
18
8
|
incomingBranchName?: string;
|
|
19
9
|
targetDir?: string;
|
|
20
10
|
vcsFolderName?: string;
|
|
21
11
|
quiet?: boolean;
|
|
22
|
-
/** When true, emit diagnostic checkpoint logging (useful in tests). */
|
|
23
|
-
diagLog?: boolean;
|
|
24
12
|
}
|
|
25
13
|
export interface MergeCmdResult {
|
|
26
|
-
/** The base (current/active) branch name — merged into. */
|
|
27
14
|
baseBranch: string;
|
|
28
|
-
/** The incoming branch name — merged from. */
|
|
29
15
|
incomingBranch: string;
|
|
30
16
|
baseSpaceId: string;
|
|
31
17
|
incomingSpaceId: string;
|
|
32
18
|
mergedBranchAddr?: string;
|
|
33
19
|
worktreePath: string;
|
|
34
20
|
}
|
|
35
|
-
export declare function executeMergeCmd({ incomingBranchName, targetDir, vcsFolderName, quiet,
|
|
21
|
+
export declare function executeMergeCmd({ incomingBranchName, targetDir, vcsFolderName, quiet, }?: MergeCmdOpts): Promise<MergeCmdResult>;
|
|
36
22
|
//# sourceMappingURL=merge-cmd.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-cmd.d.mts","sourceRoot":"","sources":["../../../src/cli/commands/merge-cmd.mts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"merge-cmd.d.mts","sourceRoot":"","sources":["../../../src/cli/commands/merge-cmd.mts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAiBH,MAAM,WAAW,YAAY;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,wBAAsB,eAAe,CAAC,EAClC,kBAAkB,EAClB,SAAyB,EACzB,aAAyB,EACzB,KAAa,GAChB,GAAE,YAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAmG7C"}
|