@teambit/harmony.content.cli-reference 2.0.670 → 2.0.671

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.
@@ -74,120 +74,6 @@
74
74
  "group": "system",
75
75
  "private": false
76
76
  },
77
- {
78
- "name": "mcp-server [sub-command]",
79
- "alias": "",
80
- "options": [
81
- [
82
- "",
83
- "include-additional <commands>",
84
- "Add specific commands to the default MCP tools set. Use comma-separated list in quotes"
85
- ],
86
- [
87
- "",
88
- "bit-bin <binary>",
89
- "Specify the binary to use for running Bit commands (default: \"bit\")"
90
- ],
91
- [
92
- "",
93
- "consumer-project",
94
- "For non-Bit workspaces that only consume Bit component packages. Enables only \"schema\", \"show\", and \"remote_search\" tools"
95
- ]
96
- ],
97
- "description": "Start the Bit CLI Model Context Protocol (MCP) server for programmatic and remote access to Bit commands.",
98
- "extendedDescription": "",
99
- "group": "advanced",
100
- "private": false,
101
- "commands": [
102
- {
103
- "name": "start",
104
- "alias": "",
105
- "options": [
106
- [
107
- "",
108
- "include-additional <commands>",
109
- "Add specific commands to the default MCP tools set. Use comma-separated list in quotes"
110
- ],
111
- [
112
- "",
113
- "bit-bin <binary>",
114
- "Specify the binary to use for running Bit commands (default: \"bit\")"
115
- ],
116
- [
117
- "",
118
- "consumer-project",
119
- "For non-Bit workspaces that only consume Bit component packages. Enables only \"schema\", \"show\", and \"remote_search\" tools"
120
- ]
121
- ],
122
- "description": "Start the MCP server",
123
- "extendedDescription": "Start the Model Context Protocol (MCP) server with the specified configuration",
124
- "group": "advanced",
125
- "private": false
126
- },
127
- {
128
- "name": "setup [editor]",
129
- "alias": "",
130
- "options": [
131
- [
132
- "",
133
- "consumer-project",
134
- "Configure for non-Bit workspaces that only consume Bit component packages"
135
- ],
136
- [
137
- "",
138
- "include-additional <commands>",
139
- "Add specific commands to the default MCP tools set. Use comma-separated list in quotes"
140
- ],
141
- [
142
- "g",
143
- "global",
144
- "Setup global configuration (default: workspace-specific)"
145
- ]
146
- ],
147
- "description": "Setup MCP integration with VS Code, Cursor, Windsurf, Roo Code, Cline, or other editors",
148
- "extendedDescription": "Creates or updates configuration files to integrate Bit MCP server with supported editors. Currently supports VS Code, Cursor, Windsurf, Roo Code, and Cline.",
149
- "group": "ungrouped",
150
- "private": false,
151
- "arguments": [
152
- {
153
- "name": "editor",
154
- "description": "Editor to setup (default: vscode). Available: vscode, cursor, windsurf, roo, cline"
155
- }
156
- ]
157
- },
158
- {
159
- "name": "rules [editor]",
160
- "alias": "",
161
- "options": [
162
- [
163
- "g",
164
- "global",
165
- "Write rules to global configuration (default: workspace-specific)"
166
- ],
167
- [
168
- "p",
169
- "print",
170
- "Print rules content to screen instead of writing to file"
171
- ],
172
- [
173
- "",
174
- "consumer-project",
175
- "Generate rules for consumer projects that only use Bit components as packages"
176
- ]
177
- ],
178
- "description": "Write Bit MCP rules/instructions file for VS Code, Cursor, Roo Code, Cline, or print to screen",
179
- "extendedDescription": "Creates or updates rules/instructions markdown files to provide AI assistants with guidance on using Bit MCP server. Currently supports VS Code, Cursor, Roo Code, and Cline. Use --print to display content on screen. Use --consumer-project for non-Bit workspaces that only consume components as packages.",
180
- "group": "ungrouped",
181
- "private": false,
182
- "arguments": [
183
- {
184
- "name": "editor",
185
- "description": "Editor to write rules for (default: vscode). Available: vscode, cursor, roo, cline"
186
- }
187
- ]
188
- }
189
- ]
190
- },
191
77
  {
192
78
  "name": "config",
193
79
  "alias": "",
@@ -270,138 +156,133 @@
270
156
  ]
271
157
  },
272
158
  {
273
- "name": "doctor [diagnosis-name]",
159
+ "name": "globals",
274
160
  "alias": "",
275
161
  "options": [
276
162
  [
277
163
  "j",
278
164
  "json",
279
- "return diagnoses in json format"
280
- ],
281
- [
282
- "",
283
- "list",
284
- "list all available diagnoses"
285
- ],
286
- [
287
- "s",
288
- "save [filePath]",
289
- "save diagnoses to a file"
290
- ],
291
- [
292
- "a",
293
- "archive [filePath]",
294
- "archive the workspace including diagnosis info (by default exclude node-modules and include .bit)"
295
- ],
296
- [
297
- "n",
298
- "include-node-modules",
299
- "relevant for --archive. include node_modules in the archive file"
300
- ],
301
- [
302
- "p",
303
- "include-public",
304
- "relevant for --archive. include public folder in the archive file"
305
- ],
306
- [
307
- "e",
308
- "exclude-local-scope",
309
- "relevant for --archive. exclude .bit or .git/bit from the archive file"
165
+ "json format"
310
166
  ]
311
167
  ],
312
- "description": "diagnose a bit workspace",
168
+ "description": "list all globals",
313
169
  "extendedDescription": "",
314
170
  "group": "system",
315
171
  "private": false
316
172
  },
317
173
  {
318
- "name": "init [path]",
174
+ "name": "system <sub-command>",
319
175
  "alias": "",
320
- "options": [
321
- [
322
- "n",
323
- "name <workspace-name>",
324
- "name of the workspace"
325
- ],
326
- [
327
- "",
328
- "generator <env-id>",
329
- "for multiple, separate by a comma. add env-ids into the generators field in the workspace config for future \"bit create\" templates"
330
- ],
331
- [
332
- "T",
333
- "standalone",
334
- "do not nest component store within .git directory and do not write config data inside package.json"
335
- ],
336
- [
337
- "",
338
- "no-package-json",
339
- "do not generate package.json"
340
- ],
341
- [
342
- "r",
343
- "reset",
344
- "write missing or damaged Bit files"
345
- ],
346
- [
347
- "",
348
- "reset-new",
349
- "reset .bitmap file as if the components were newly added and remove all model data (objects)"
350
- ],
351
- [
352
- "",
353
- "reset-lane-new",
354
- "same as reset-new, but it only resets components belong to lanes. main components are left intact"
355
- ],
356
- [
357
- "",
358
- "reset-hard",
359
- "delete all Bit files and directories, including Bit configuration, tracking and model data. Useful for re-starting workspace from scratch"
360
- ],
361
- [
362
- "",
363
- "reset-scope",
364
- "removes local scope (.bit or .git/bit). tags/snaps that have not been exported will be lost. workspace is left intact"
365
- ],
366
- [
367
- "d",
368
- "default-directory <default-directory>",
369
- "set the default directory pattern to import/create components into"
370
- ],
371
- [
372
- "",
373
- "default-scope <default-scope>",
374
- "set the default scope for components in the workspace"
375
- ],
376
- [
377
- "f",
378
- "force",
379
- "force workspace initialization without clearing local objects"
380
- ],
381
- [
382
- "b",
383
- "bare [name]",
384
- "initialize an empty bit bare scope"
385
- ],
386
- [
387
- "s",
388
- "shared <groupname>",
389
- "add group write permissions to a scope properly"
390
- ]
391
- ],
392
- "description": "create or reinitialize an empty workspace",
393
- "extendedDescription": "if the current directory is already a workspace, it validates that bit files are correct and rewrite them if needed.",
394
- "group": "workspace-setup",
176
+ "options": [],
177
+ "description": "system operations",
178
+ "extendedDescription": "",
179
+ "group": "system",
395
180
  "private": false,
396
- "skipWorkspace": true
181
+ "commands": [
182
+ {
183
+ "name": "log",
184
+ "alias": "",
185
+ "options": [],
186
+ "description": "print debug.log to the screen",
187
+ "extendedDescription": "",
188
+ "group": "system",
189
+ "private": false
190
+ },
191
+ {
192
+ "name": "tail-log",
193
+ "alias": "",
194
+ "options": [],
195
+ "description": "print the log file to the screen as it is being written",
196
+ "extendedDescription": "similar to linux \"tail -f\" command",
197
+ "group": "system",
198
+ "private": false
199
+ }
200
+ ]
397
201
  },
398
202
  {
399
- "name": "show <component-name>",
203
+ "name": "remote",
400
204
  "alias": "",
401
205
  "options": [
402
206
  [
403
- "j",
404
- "json",
207
+ "g",
208
+ "global",
209
+ "see globally configured remotes"
210
+ ]
211
+ ],
212
+ "description": "manage set of tracked bit scope(s)",
213
+ "extendedDescription": "",
214
+ "group": "collaborate",
215
+ "private": false,
216
+ "commands": [
217
+ {
218
+ "name": "add <url>",
219
+ "alias": "",
220
+ "options": [
221
+ [
222
+ "g",
223
+ "global",
224
+ "configure a remote bit scope"
225
+ ]
226
+ ],
227
+ "description": "add a bare-scope as a remote",
228
+ "extendedDescription": "supported protocols are [file, http].\nfor example: \"http://localhost:3000\", \"file:///tmp/local-scope\"",
229
+ "group": "ungrouped",
230
+ "private": false
231
+ },
232
+ {
233
+ "name": "del <name>",
234
+ "alias": "",
235
+ "options": [
236
+ [
237
+ "g",
238
+ "global",
239
+ "remove a globally configured remote scope"
240
+ ]
241
+ ],
242
+ "description": "remove a tracked bit remote",
243
+ "extendedDescription": "",
244
+ "group": "ungrouped",
245
+ "private": false
246
+ },
247
+ {
248
+ "name": "list",
249
+ "alias": "",
250
+ "options": [
251
+ [
252
+ "g",
253
+ "global",
254
+ "see globally configured remotes"
255
+ ]
256
+ ],
257
+ "description": "list all configured remotes",
258
+ "extendedDescription": "",
259
+ "group": "collaborate",
260
+ "private": false
261
+ }
262
+ ]
263
+ },
264
+ {
265
+ "name": "component-issues",
266
+ "alias": "",
267
+ "options": [
268
+ [
269
+ "j",
270
+ "json",
271
+ "output issues in json format"
272
+ ]
273
+ ],
274
+ "description": "list available component-issues",
275
+ "extendedDescription": "",
276
+ "group": "info-analysis",
277
+ "private": true
278
+ },
279
+ {
280
+ "name": "show <component-name>",
281
+ "alias": "",
282
+ "options": [
283
+ [
284
+ "j",
285
+ "json",
405
286
  "return the component data in json format"
406
287
  ],
407
288
  [
@@ -436,21 +317,6 @@
436
317
  }
437
318
  ]
438
319
  },
439
- {
440
- "name": "component-issues",
441
- "alias": "",
442
- "options": [
443
- [
444
- "j",
445
- "json",
446
- "output issues in json format"
447
- ]
448
- ],
449
- "description": "list available component-issues",
450
- "extendedDescription": "",
451
- "group": "info-analysis",
452
- "private": true
453
- },
454
320
  {
455
321
  "name": "envs",
456
322
  "alias": "env",
@@ -587,158 +453,6 @@
587
453
  }
588
454
  ]
589
455
  },
590
- {
591
- "name": "globals",
592
- "alias": "",
593
- "options": [
594
- [
595
- "j",
596
- "json",
597
- "json format"
598
- ]
599
- ],
600
- "description": "list all globals",
601
- "extendedDescription": "",
602
- "group": "system",
603
- "private": false
604
- },
605
- {
606
- "name": "system <sub-command>",
607
- "alias": "",
608
- "options": [],
609
- "description": "system operations",
610
- "extendedDescription": "",
611
- "group": "system",
612
- "private": false,
613
- "commands": [
614
- {
615
- "name": "log",
616
- "alias": "",
617
- "options": [],
618
- "description": "print debug.log to the screen",
619
- "extendedDescription": "",
620
- "group": "system",
621
- "private": false
622
- },
623
- {
624
- "name": "tail-log",
625
- "alias": "",
626
- "options": [],
627
- "description": "print the log file to the screen as it is being written",
628
- "extendedDescription": "similar to linux \"tail -f\" command",
629
- "group": "system",
630
- "private": false
631
- }
632
- ]
633
- },
634
- {
635
- "name": "remote",
636
- "alias": "",
637
- "options": [
638
- [
639
- "g",
640
- "global",
641
- "see globally configured remotes"
642
- ]
643
- ],
644
- "description": "manage set of tracked bit scope(s)",
645
- "extendedDescription": "",
646
- "group": "collaborate",
647
- "private": false,
648
- "commands": [
649
- {
650
- "name": "add <url>",
651
- "alias": "",
652
- "options": [
653
- [
654
- "g",
655
- "global",
656
- "configure a remote bit scope"
657
- ]
658
- ],
659
- "description": "add a bare-scope as a remote",
660
- "extendedDescription": "supported protocols are [file, http].\nfor example: \"http://localhost:3000\", \"file:///tmp/local-scope\"",
661
- "group": "ungrouped",
662
- "private": false
663
- },
664
- {
665
- "name": "del <name>",
666
- "alias": "",
667
- "options": [
668
- [
669
- "g",
670
- "global",
671
- "remove a globally configured remote scope"
672
- ]
673
- ],
674
- "description": "remove a tracked bit remote",
675
- "extendedDescription": "",
676
- "group": "ungrouped",
677
- "private": false
678
- },
679
- {
680
- "name": "list",
681
- "alias": "",
682
- "options": [
683
- [
684
- "g",
685
- "global",
686
- "see globally configured remotes"
687
- ]
688
- ],
689
- "description": "list all configured remotes",
690
- "extendedDescription": "",
691
- "group": "collaborate",
692
- "private": false
693
- }
694
- ]
695
- },
696
- {
697
- "name": "graph [id]",
698
- "alias": "",
699
- "options": [
700
- [
701
- "r",
702
- "remote [remoteName]",
703
- "remote name (name is optional, leave empty when id is specified)"
704
- ],
705
- [
706
- "",
707
- "layout <name>",
708
- "GraphVis layout. default to \"dot\". options are [circo, dot, fdp, neato, osage, patchwork, sfdp, twopi]"
709
- ],
710
- [
711
- "",
712
- "png",
713
- "save the graph as a png file instead of svg. requires \"graphviz\" to be installed"
714
- ],
715
- [
716
- "",
717
- "cycles",
718
- "generate a graph of cycles only"
719
- ],
720
- [
721
- "",
722
- "include-local-only",
723
- "DEPRECATED: include only the components in the workspace (or local scope). This is now the default behavior."
724
- ],
725
- [
726
- "",
727
- "include-dependencies",
728
- "include all dependencies recursively, not just workspace (or local scope) components"
729
- ],
730
- [
731
- "j",
732
- "json",
733
- "json format"
734
- ]
735
- ],
736
- "description": "generate an SVG image file with the components' dependencies graph",
737
- "extendedDescription": "",
738
- "group": "info-analysis",
739
- "private": false,
740
- "remoteOp": true
741
- },
742
456
  {
743
457
  "name": "start [component-pattern]",
744
458
  "alias": "c",
@@ -810,16 +524,62 @@
810
524
  "private": true
811
525
  },
812
526
  {
813
- "name": "scope <sub-command>",
527
+ "name": "graph [id]",
814
528
  "alias": "",
815
- "options": [],
816
- "description": "manage the scope-name for components",
817
- "extendedDescription": "",
818
- "group": "component-config",
819
- "private": false,
820
- "commands": [
821
- {
822
- "name": "set <scope-name> [component-pattern]",
529
+ "options": [
530
+ [
531
+ "r",
532
+ "remote [remoteName]",
533
+ "remote name (name is optional, leave empty when id is specified)"
534
+ ],
535
+ [
536
+ "",
537
+ "layout <name>",
538
+ "GraphVis layout. default to \"dot\". options are [circo, dot, fdp, neato, osage, patchwork, sfdp, twopi]"
539
+ ],
540
+ [
541
+ "",
542
+ "png",
543
+ "save the graph as a png file instead of svg. requires \"graphviz\" to be installed"
544
+ ],
545
+ [
546
+ "",
547
+ "cycles",
548
+ "generate a graph of cycles only"
549
+ ],
550
+ [
551
+ "",
552
+ "include-local-only",
553
+ "DEPRECATED: include only the components in the workspace (or local scope). This is now the default behavior."
554
+ ],
555
+ [
556
+ "",
557
+ "include-dependencies",
558
+ "include all dependencies recursively, not just workspace (or local scope) components"
559
+ ],
560
+ [
561
+ "j",
562
+ "json",
563
+ "json format"
564
+ ]
565
+ ],
566
+ "description": "generate an SVG image file with the components' dependencies graph",
567
+ "extendedDescription": "",
568
+ "group": "info-analysis",
569
+ "private": false,
570
+ "remoteOp": true
571
+ },
572
+ {
573
+ "name": "scope <sub-command>",
574
+ "alias": "",
575
+ "options": [],
576
+ "description": "manage the scope-name for components",
577
+ "extendedDescription": "",
578
+ "group": "component-config",
579
+ "private": false,
580
+ "commands": [
581
+ {
582
+ "name": "set <scope-name> [component-pattern]",
823
583
  "options": [],
824
584
  "description": "Sets the scope for specified component/s. If no component is specified, sets the default scope of the workspace",
825
585
  "extendedDescription": "default scopes for components are set in the bitmap file. the default scope for a workspace is set in the workspace.jsonc.\na component is set with a scope (as oppose to default scope) only once it is versioned.'\n\nyou can use a `<pattern>` for multiple component ids, such as `bit scope set scope-name \"org.scope/utils/**\"`.\nuse comma to separate patterns and '!' to exclude. e.g. 'ui/**, !ui/button'\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nalways wrap the pattern with single quotes to avoid collision with shell commands.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern.\n",
@@ -1012,123 +772,6 @@
1012
772
  "group": "advanced",
1013
773
  "private": true
1014
774
  },
1015
- {
1016
- "name": "version-history <sub-command>",
1017
- "alias": "vh",
1018
- "options": [],
1019
- "description": "manage the version-history of components",
1020
- "extendedDescription": "",
1021
- "group": "version-control",
1022
- "private": false,
1023
- "commands": [
1024
- {
1025
- "name": "graph <component-id>",
1026
- "alias": "",
1027
- "options": [
1028
- [
1029
- "s",
1030
- "short-hash",
1031
- "show only 9 chars of the hash"
1032
- ],
1033
- [
1034
- "m",
1035
- "mark <string>",
1036
- "paint the given node-ids in the graph in red color, for multiple, separate by commas"
1037
- ],
1038
- [
1039
- "",
1040
- "png",
1041
- "save the graph as a png file instead of svg. requires \"graphviz\" to be installed"
1042
- ],
1043
- [
1044
- "l",
1045
- "layout <name>",
1046
- "GraphVis layout. default to \"dot\". options are [circo, dot, fdp, neato, osage, patchwork, sfdp, twopi]"
1047
- ],
1048
- [
1049
- "",
1050
- "limit <number>",
1051
- "limit the number of nodes in the graph (starting from the heads)"
1052
- ]
1053
- ],
1054
- "description": "generate a graph of the version history of a component and save as an SVG file",
1055
- "extendedDescription": "",
1056
- "group": "info-analysis",
1057
- "private": false
1058
- },
1059
- {
1060
- "name": "show <component-id>",
1061
- "alias": "vh",
1062
- "options": [
1063
- [
1064
- "s",
1065
- "short-hash",
1066
- "show only 9 chars of the hash"
1067
- ],
1068
- [
1069
- "j",
1070
- "json",
1071
- "json format"
1072
- ]
1073
- ],
1074
- "description": "show the version-history of a component",
1075
- "extendedDescription": "",
1076
- "group": "info-analysis",
1077
- "private": false
1078
- },
1079
- {
1080
- "name": "build <component-pattern>",
1081
- "alias": "",
1082
- "options": [
1083
- [
1084
- "",
1085
- "from-snap <snap>",
1086
- "build the version history from a specific snap. the pattern must be a single component-id"
1087
- ],
1088
- [
1089
- "",
1090
- "from-all-lanes",
1091
- "build the version history from the heads of all lanes that include this component"
1092
- ],
1093
- [
1094
- "",
1095
- "delete-existing",
1096
- "delete the existing version history before building it"
1097
- ],
1098
- [
1099
- "",
1100
- "remote <scope>",
1101
- "make the change on the remote scope"
1102
- ]
1103
- ],
1104
- "description": "rebuild the version history of a component. helpful when it got corrupted for some reason",
1105
- "extendedDescription": "",
1106
- "group": "info-analysis",
1107
- "private": false,
1108
- "arguments": [
1109
- {
1110
- "name": "component-pattern",
1111
- "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
1112
- }
1113
- ]
1114
- }
1115
- ]
1116
- },
1117
- {
1118
- "name": "cat-version-history <id>",
1119
- "alias": "cvh",
1120
- "options": [
1121
- [
1122
- "j",
1123
- "json",
1124
- "json format"
1125
- ]
1126
- ],
1127
- "description": "cat version-history object by component-id",
1128
- "extendedDescription": "",
1129
- "group": "advanced",
1130
- "private": true
1131
- },
1132
775
  {
1133
776
  "name": "eject-conf <pattern>",
1134
777
  "alias": "",
@@ -1375,41 +1018,6 @@
1375
1018
  }
1376
1019
  ]
1377
1020
  },
1378
- {
1379
- "name": "git <sub-command>",
1380
- "alias": "",
1381
- "options": [],
1382
- "description": "perform git operations",
1383
- "extendedDescription": "",
1384
- "group": "workspace-tools",
1385
- "private": false,
1386
- "commands": [
1387
- {
1388
- "name": "set-merge-driver",
1389
- "alias": "smd",
1390
- "options": [
1391
- [
1392
- "g",
1393
- "global",
1394
- "set the git merge driver globally"
1395
- ]
1396
- ],
1397
- "description": "setup bit's git merge driver for bitmap files",
1398
- "extendedDescription": "",
1399
- "group": "workspace-tools",
1400
- "private": false
1401
- },
1402
- {
1403
- "name": "merge-bitmaps <ancestor> <current> <other>",
1404
- "alias": "",
1405
- "options": [],
1406
- "description": "a special command to merge conflicting bitmap files during git merge",
1407
- "extendedDescription": "",
1408
- "group": "workspace-tools",
1409
- "private": true
1410
- }
1411
- ]
1412
- },
1413
1021
  {
1414
1022
  "name": "list [remote-scope]",
1415
1023
  "alias": "ls",
@@ -1602,6 +1210,41 @@
1602
1210
  "remoteOp": true,
1603
1211
  "skipWorkspace": true
1604
1212
  },
1213
+ {
1214
+ "name": "git <sub-command>",
1215
+ "alias": "",
1216
+ "options": [],
1217
+ "description": "perform git operations",
1218
+ "extendedDescription": "",
1219
+ "group": "workspace-tools",
1220
+ "private": false,
1221
+ "commands": [
1222
+ {
1223
+ "name": "set-merge-driver",
1224
+ "alias": "smd",
1225
+ "options": [
1226
+ [
1227
+ "g",
1228
+ "global",
1229
+ "set the git merge driver globally"
1230
+ ]
1231
+ ],
1232
+ "description": "setup bit's git merge driver for bitmap files",
1233
+ "extendedDescription": "",
1234
+ "group": "workspace-tools",
1235
+ "private": false
1236
+ },
1237
+ {
1238
+ "name": "merge-bitmaps <ancestor> <current> <other>",
1239
+ "alias": "",
1240
+ "options": [],
1241
+ "description": "a special command to merge conflicting bitmap files during git merge",
1242
+ "extendedDescription": "",
1243
+ "group": "workspace-tools",
1244
+ "private": true
1245
+ }
1246
+ ]
1247
+ },
1605
1248
  {
1606
1249
  "name": "add [path...]",
1607
1250
  "alias": "a",
@@ -2627,21 +2270,234 @@
2627
2270
  "private": false
2628
2271
  },
2629
2272
  {
2630
- "name": "deps <sub-command>",
2631
- "alias": "dependencies",
2632
- "options": [],
2633
- "description": "manage dependencies",
2634
- "extendedDescription": "",
2635
- "group": "dependencies",
2636
- "private": false,
2637
- "commands": [
2638
- {
2639
- "name": "get <component-name>",
2640
- "alias": "",
2641
- "options": [
2642
- [
2643
- "",
2644
- "scope",
2273
+ "name": "checkout <to> [component-pattern]",
2274
+ "alias": "U",
2275
+ "options": [
2276
+ [
2277
+ "i",
2278
+ "interactive-merge",
2279
+ "when a component is modified and the merge process found conflicts, display options to resolve them"
2280
+ ],
2281
+ [
2282
+ "r",
2283
+ "auto-merge-resolve <merge-strategy>",
2284
+ "in case of merge conflict, resolve according to the provided strategy: [ours, theirs, manual]"
2285
+ ],
2286
+ [
2287
+ "",
2288
+ "manual",
2289
+ "same as \"--auto-merge-resolve manual\". in case of merge conflict, write the files with the conflict markers"
2290
+ ],
2291
+ [
2292
+ "a",
2293
+ "all",
2294
+ "all components"
2295
+ ],
2296
+ [
2297
+ "e",
2298
+ "workspace-only",
2299
+ "only relevant for 'bit checkout head' when on a lane. don't import components from the remote lane that are not already in the workspace"
2300
+ ],
2301
+ [
2302
+ "v",
2303
+ "verbose",
2304
+ "showing verbose output for inspection"
2305
+ ],
2306
+ [
2307
+ "x",
2308
+ "skip-dependency-installation",
2309
+ "do not auto-install dependencies of the imported components"
2310
+ ],
2311
+ [
2312
+ "",
2313
+ "force-ours",
2314
+ "do not merge, preserve local files as is"
2315
+ ],
2316
+ [
2317
+ "",
2318
+ "force-theirs",
2319
+ "do not merge, just overwrite with incoming files"
2320
+ ]
2321
+ ],
2322
+ "description": "switch between component versions or remove local changes",
2323
+ "extendedDescription": "\n`bit checkout <version> [component-pattern]` => checkout the specified ids (or all components when --all is used) to the specified version\n`bit checkout head [component-pattern]` => checkout to the last snap/tag (use --latest if you only want semver tags), omit [component-pattern] to checkout head for all\n`bit checkout head~x [component-pattern]` => go backward x generations from the head and checkout to that version\n`bit checkout latest [component-pattern]` => checkout to the latest satisfying semver tag, omit [component-pattern] to checkout latest for all\n`bit checkout reset [component-pattern]` => remove local modifications from the specified ids (or all components when --all is used). also, if a component dir is deleted from the filesystem, it'll be restored\nwhen on a lane, \"checkout head\" only checks out components on this lane. to update main components, run \"bit lane merge main\"",
2324
+ "group": "version-control",
2325
+ "private": false,
2326
+ "arguments": [
2327
+ {
2328
+ "name": "to",
2329
+ "description": "permitted values: [head, latest, reset, {specific-version}, {head~x}]. 'head' - last snap/tag. 'latest' - semver latest tag. 'reset' - removes local changes"
2330
+ },
2331
+ {
2332
+ "name": "component-pattern",
2333
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
2334
+ }
2335
+ ]
2336
+ },
2337
+ {
2338
+ "name": "revert <component-pattern> <to>",
2339
+ "alias": "",
2340
+ "options": [
2341
+ [
2342
+ "v",
2343
+ "verbose",
2344
+ "showing verbose output for inspection"
2345
+ ],
2346
+ [
2347
+ "x",
2348
+ "skip-dependency-installation",
2349
+ "do not install packages of the imported components"
2350
+ ]
2351
+ ],
2352
+ "description": "replace the current component files by the specified version, leave the version intact",
2353
+ "extendedDescription": "",
2354
+ "group": "version-control",
2355
+ "private": false,
2356
+ "arguments": [
2357
+ {
2358
+ "name": "component-pattern",
2359
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
2360
+ },
2361
+ {
2362
+ "name": "to",
2363
+ "description": "permitted values: [main, specific-version]. 'main' - head version on main."
2364
+ }
2365
+ ]
2366
+ },
2367
+ {
2368
+ "name": "eject <component-pattern>",
2369
+ "alias": "E",
2370
+ "options": [
2371
+ [
2372
+ "f",
2373
+ "force",
2374
+ "ignore local changes/versions. eject component/s even when they are staged or modified. Note: unexported tags/snaps will be lost"
2375
+ ],
2376
+ [
2377
+ "x",
2378
+ "skip-dependency-installation",
2379
+ "do not auto-install dependencies"
2380
+ ],
2381
+ [
2382
+ "j",
2383
+ "json",
2384
+ "print the results in JSON format"
2385
+ ],
2386
+ [
2387
+ "",
2388
+ "keep-files",
2389
+ "keep the component files in the workspace intact"
2390
+ ]
2391
+ ],
2392
+ "description": "remove component from the workspace and install it instead as a regular npm package.",
2393
+ "extendedDescription": "By default the component files will be removed from the workspace",
2394
+ "group": "dependencies",
2395
+ "private": false,
2396
+ "arguments": [
2397
+ {
2398
+ "name": "component-pattern",
2399
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
2400
+ }
2401
+ ]
2402
+ },
2403
+ {
2404
+ "name": "resume-export <export-id> <remotes...>",
2405
+ "alias": "",
2406
+ "options": [],
2407
+ "description": "EXPERIMENTAL. resume failed export",
2408
+ "extendedDescription": "resume failed export to persist the pending objects on the given remotes.\nthe export-id is the id the client received in the error message during the failure.\nalternatively, exporting to any one of the failed scopes, throws server-is-busy error with the export-id",
2409
+ "group": "advanced",
2410
+ "private": true,
2411
+ "remoteOp": true
2412
+ },
2413
+ {
2414
+ "name": "export [component-patterns...]",
2415
+ "alias": "e",
2416
+ "options": [
2417
+ [
2418
+ "e",
2419
+ "eject",
2420
+ "after export, remove the components from the workspace and install them as packages"
2421
+ ],
2422
+ [
2423
+ "a",
2424
+ "all",
2425
+ "export all components, including non-staged (useful when components in the remote scope are corrupted or missing)"
2426
+ ],
2427
+ [
2428
+ "",
2429
+ "all-versions",
2430
+ "export not only staged versions but all of them (useful when versions in the remote scope are corrupted or missing)"
2431
+ ],
2432
+ [
2433
+ "",
2434
+ "origin-directly",
2435
+ "avoid export to the central hub, instead, export directly to the original scopes. not recommended!"
2436
+ ],
2437
+ [
2438
+ "",
2439
+ "resume <string>",
2440
+ "in case the previous export failed and suggested to resume with an export-id, enter the id"
2441
+ ],
2442
+ [
2443
+ "",
2444
+ "head-only",
2445
+ "in case previous export failed and locally it shows exported and only one snap/tag was created, try using this flag"
2446
+ ],
2447
+ [
2448
+ "",
2449
+ "ignore-missing-artifacts",
2450
+ "don't throw an error when artifact files are missing. not recommended, unless you're sure the artifacts are in the remote"
2451
+ ],
2452
+ [
2453
+ "",
2454
+ "fork-lane-new-scope",
2455
+ "allow exporting a forked lane into a different scope than the original scope"
2456
+ ],
2457
+ [
2458
+ "",
2459
+ "open-browser",
2460
+ "open a browser once the export is completed in the cloud job url"
2461
+ ],
2462
+ [
2463
+ "",
2464
+ "verbose",
2465
+ "per exported component, show the versions being exported"
2466
+ ],
2467
+ [
2468
+ "j",
2469
+ "json",
2470
+ "show output in json format"
2471
+ ]
2472
+ ],
2473
+ "description": "export components from the workspace to remote scopes",
2474
+ "extendedDescription": "bit export => export all staged snaps/tags of components to their remote scope. if checked out to a lane, export the lane as well\n `bit export [pattern...]` => export components included by the pattern to their remote scope (we recommend not using a pattern in\n most scenarios so that all changes are exported simultaneously)\n you can use a pattern for multiple ids, such as bit export \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
2475
+ "group": "collaborate",
2476
+ "private": false,
2477
+ "remoteOp": true,
2478
+ "arguments": [
2479
+ {
2480
+ "name": "component-patterns...",
2481
+ "description": "(not recommended) component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
2482
+ }
2483
+ ]
2484
+ },
2485
+ {
2486
+ "name": "deps <sub-command>",
2487
+ "alias": "dependencies",
2488
+ "options": [],
2489
+ "description": "manage dependencies",
2490
+ "extendedDescription": "",
2491
+ "group": "dependencies",
2492
+ "private": false,
2493
+ "commands": [
2494
+ {
2495
+ "name": "get <component-name>",
2496
+ "alias": "",
2497
+ "options": [
2498
+ [
2499
+ "",
2500
+ "scope",
2645
2501
  "get the data from the scope instead of the workspace"
2646
2502
  ],
2647
2503
  [
@@ -2932,141 +2788,23 @@
2932
2788
  ]
2933
2789
  },
2934
2790
  {
2935
- "name": "eject <component-pattern>",
2936
- "alias": "E",
2791
+ "name": "tag [component-patterns...]",
2792
+ "alias": "t",
2937
2793
  "options": [
2938
2794
  [
2939
- "f",
2940
- "force",
2941
- "ignore local changes/versions. eject component/s even when they are staged or modified. Note: unexported tags/snaps will be lost"
2795
+ "m",
2796
+ "message <message>",
2797
+ "a log message describing latest changes"
2942
2798
  ],
2943
2799
  [
2944
- "x",
2945
- "skip-dependency-installation",
2946
- "do not auto-install dependencies"
2800
+ "u",
2801
+ "unmodified",
2802
+ "include unmodified components (by default, only new and modified components are tagged)"
2947
2803
  ],
2948
2804
  [
2949
- "j",
2950
- "json",
2951
- "print the results in JSON format"
2952
- ],
2953
- [
2954
- "",
2955
- "keep-files",
2956
- "keep the component files in the workspace intact"
2957
- ]
2958
- ],
2959
- "description": "remove component from the workspace and install it instead as a regular npm package.",
2960
- "extendedDescription": "By default the component files will be removed from the workspace",
2961
- "group": "dependencies",
2962
- "private": false,
2963
- "arguments": [
2964
- {
2965
- "name": "component-pattern",
2966
- "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
2967
- }
2968
- ]
2969
- },
2970
- {
2971
- "name": "resume-export <export-id> <remotes...>",
2972
- "alias": "",
2973
- "options": [],
2974
- "description": "EXPERIMENTAL. resume failed export",
2975
- "extendedDescription": "resume failed export to persist the pending objects on the given remotes.\nthe export-id is the id the client received in the error message during the failure.\nalternatively, exporting to any one of the failed scopes, throws server-is-busy error with the export-id",
2976
- "group": "advanced",
2977
- "private": true,
2978
- "remoteOp": true
2979
- },
2980
- {
2981
- "name": "export [component-patterns...]",
2982
- "alias": "e",
2983
- "options": [
2984
- [
2985
- "e",
2986
- "eject",
2987
- "after export, remove the components from the workspace and install them as packages"
2988
- ],
2989
- [
2990
- "a",
2991
- "all",
2992
- "export all components, including non-staged (useful when components in the remote scope are corrupted or missing)"
2993
- ],
2994
- [
2995
- "",
2996
- "all-versions",
2997
- "export not only staged versions but all of them (useful when versions in the remote scope are corrupted or missing)"
2998
- ],
2999
- [
3000
- "",
3001
- "origin-directly",
3002
- "avoid export to the central hub, instead, export directly to the original scopes. not recommended!"
3003
- ],
3004
- [
3005
- "",
3006
- "resume <string>",
3007
- "in case the previous export failed and suggested to resume with an export-id, enter the id"
3008
- ],
3009
- [
3010
- "",
3011
- "head-only",
3012
- "in case previous export failed and locally it shows exported and only one snap/tag was created, try using this flag"
3013
- ],
3014
- [
3015
- "",
3016
- "ignore-missing-artifacts",
3017
- "don't throw an error when artifact files are missing. not recommended, unless you're sure the artifacts are in the remote"
3018
- ],
3019
- [
3020
- "",
3021
- "fork-lane-new-scope",
3022
- "allow exporting a forked lane into a different scope than the original scope"
3023
- ],
3024
- [
3025
- "",
3026
- "open-browser",
3027
- "open a browser once the export is completed in the cloud job url"
3028
- ],
3029
- [
3030
- "",
3031
- "verbose",
3032
- "per exported component, show the versions being exported"
3033
- ],
3034
- [
3035
- "j",
3036
- "json",
3037
- "show output in json format"
3038
- ]
3039
- ],
3040
- "description": "export components from the workspace to remote scopes",
3041
- "extendedDescription": "bit export => export all staged snaps/tags of components to their remote scope. if checked out to a lane, export the lane as well\n `bit export [pattern...]` => export components included by the pattern to their remote scope (we recommend not using a pattern in\n most scenarios so that all changes are exported simultaneously)\n you can use a pattern for multiple ids, such as bit export \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
3042
- "group": "collaborate",
3043
- "private": false,
3044
- "remoteOp": true,
3045
- "arguments": [
3046
- {
3047
- "name": "component-patterns...",
3048
- "description": "(not recommended) component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
3049
- }
3050
- ]
3051
- },
3052
- {
3053
- "name": "tag [component-patterns...]",
3054
- "alias": "t",
3055
- "options": [
3056
- [
3057
- "m",
3058
- "message <message>",
3059
- "a log message describing latest changes"
3060
- ],
3061
- [
3062
- "u",
3063
- "unmodified",
3064
- "include unmodified components (by default, only new and modified components are tagged)"
3065
- ],
3066
- [
3067
- "",
3068
- "editor [editor]",
3069
- "open an editor to write a tag message for each component. optionally, specify the editor-name (defaults to vim)."
2805
+ "",
2806
+ "editor [editor]",
2807
+ "open an editor to write a tag message for each component. optionally, specify the editor-name (defaults to vim)."
3070
2808
  ],
3071
2809
  [
3072
2810
  "v",
@@ -3349,64 +3087,65 @@
3349
3087
  "private": true
3350
3088
  },
3351
3089
  {
3352
- "name": "checkout <to> [component-pattern]",
3353
- "alias": "U",
3090
+ "name": "test [component-pattern]",
3091
+ "alias": "at",
3354
3092
  "options": [
3355
3093
  [
3356
- "i",
3357
- "interactive-merge",
3358
- "when a component is modified and the merge process found conflicts, display options to resolve them"
3359
- ],
3360
- [
3361
- "r",
3362
- "auto-merge-resolve <merge-strategy>",
3363
- "in case of merge conflict, resolve according to the provided strategy: [ours, theirs, manual]"
3094
+ "w",
3095
+ "watch",
3096
+ "start the tester in watch mode."
3364
3097
  ],
3365
3098
  [
3366
- "",
3367
- "manual",
3368
- "same as \"--auto-merge-resolve manual\". in case of merge conflict, write the files with the conflict markers"
3099
+ "d",
3100
+ "debug",
3101
+ "start the tester in debug mode."
3369
3102
  ],
3370
3103
  [
3371
3104
  "a",
3372
3105
  "all",
3373
- "all components"
3106
+ "DEPRECATED. (use --unmodified)"
3374
3107
  ],
3375
3108
  [
3376
- "e",
3377
- "workspace-only",
3378
- "only relevant for 'bit checkout head' when on a lane. don't import components from the remote lane that are not already in the workspace"
3109
+ "u",
3110
+ "unmodified",
3111
+ "test all components, not only new and modified"
3379
3112
  ],
3380
3113
  [
3381
- "v",
3382
- "verbose",
3383
- "showing verbose output for inspection"
3114
+ "",
3115
+ "junit <filepath>",
3116
+ "write tests results as JUnit XML format into the specified file path"
3384
3117
  ],
3385
3118
  [
3386
- "x",
3387
- "skip-dependency-installation",
3388
- "do not auto-install dependencies of the imported components"
3119
+ "",
3120
+ "coverage",
3121
+ "show code coverage data"
3389
3122
  ],
3390
3123
  [
3391
- "",
3392
- "force-ours",
3393
- "do not merge, preserve local files as is"
3124
+ "e",
3125
+ "env <id>",
3126
+ "test only components assigned the given env"
3394
3127
  ],
3395
3128
  [
3396
3129
  "",
3397
- "force-theirs",
3398
- "do not merge, just overwrite with incoming files"
3130
+ "update-snapshot",
3131
+ "if supported by the tester, re-record every snapshot that fails during the test run"
3132
+ ],
3133
+ [
3134
+ "s",
3135
+ "scope <scope-name>",
3136
+ "DEPRECATED. (use the pattern instead, e.g. \"scopeName/**\"). name of the scope to test"
3137
+ ],
3138
+ [
3139
+ "j",
3140
+ "json",
3141
+ "return the results in json format"
3399
3142
  ]
3400
3143
  ],
3401
- "description": "switch between component versions or remove local changes",
3402
- "extendedDescription": "\n`bit checkout <version> [component-pattern]` => checkout the specified ids (or all components when --all is used) to the specified version\n`bit checkout head [component-pattern]` => checkout to the last snap/tag (use --latest if you only want semver tags), omit [component-pattern] to checkout head for all\n`bit checkout head~x [component-pattern]` => go backward x generations from the head and checkout to that version\n`bit checkout latest [component-pattern]` => checkout to the latest satisfying semver tag, omit [component-pattern] to checkout latest for all\n`bit checkout reset [component-pattern]` => remove local modifications from the specified ids (or all components when --all is used). also, if a component dir is deleted from the filesystem, it'll be restored\nwhen on a lane, \"checkout head\" only checks out components on this lane. to update main components, run \"bit lane merge main\"",
3403
- "group": "version-control",
3144
+ "description": "test components in the workspace. by default only runs tests for new and modified components",
3145
+ "extendedDescription": "",
3146
+ "group": "testing",
3404
3147
  "private": false,
3405
3148
  "arguments": [
3406
- {
3407
- "name": "to",
3408
- "description": "permitted values: [head, latest, reset, {specific-version}, {head~x}]. 'head' - last snap/tag. 'latest' - semver latest tag. 'reset' - removes local changes"
3409
- },
3410
3149
  {
3411
3150
  "name": "component-pattern",
3412
3151
  "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
@@ -3414,23 +3153,28 @@
3414
3153
  ]
3415
3154
  },
3416
3155
  {
3417
- "name": "revert <component-pattern> <to>",
3156
+ "name": "diff [component-pattern] [version] [to-version]",
3418
3157
  "alias": "",
3419
3158
  "options": [
3159
+ [
3160
+ "p",
3161
+ "parent",
3162
+ "compare the specified \"version\" to its immediate parent instead of comparing to the current one"
3163
+ ],
3420
3164
  [
3421
3165
  "v",
3422
3166
  "verbose",
3423
- "showing verbose output for inspection"
3167
+ "show a more verbose output where possible"
3424
3168
  ],
3425
3169
  [
3426
- "x",
3427
- "skip-dependency-installation",
3428
- "do not install packages of the imported components"
3170
+ "t",
3171
+ "table",
3172
+ "show tables instead of plain text for dependencies diff"
3429
3173
  ]
3430
3174
  ],
3431
- "description": "replace the current component files by the specified version, leave the version intact",
3175
+ "description": "show the diff between the components' current source files and config, and their latest snapshot or tag",
3432
3176
  "extendedDescription": "",
3433
- "group": "version-control",
3177
+ "group": "info-analysis",
3434
3178
  "private": false,
3435
3179
  "arguments": [
3436
3180
  {
@@ -3438,175 +3182,104 @@
3438
3182
  "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
3439
3183
  },
3440
3184
  {
3441
- "name": "to",
3442
- "description": "permitted values: [main, specific-version]. 'main' - head version on main."
3185
+ "name": "version",
3186
+ "description": "the base version to compare from. if omitted, compares the workspace's current files to the component's latest version."
3187
+ },
3188
+ {
3189
+ "name": "to-version",
3190
+ "description": "the target version to compare against \"version\".\nif both \"version\" and \"to-version\" are provided, compare those two versions directly (ignoring the workspace)."
3191
+ }
3192
+ ],
3193
+ "examples": [
3194
+ {
3195
+ "cmd": "diff",
3196
+ "description": "show diff for all modified components"
3197
+ },
3198
+ {
3199
+ "cmd": "diff foo",
3200
+ "description": "show diff for a component \"foo\""
3201
+ },
3202
+ {
3203
+ "cmd": "diff foo 0.0.1",
3204
+ "description": "show diff for a component \"foo\" from the current state to version 0.0.1"
3205
+ },
3206
+ {
3207
+ "cmd": "diff foo 0.0.1 0.0.2",
3208
+ "description": "show diff for a component \"foo\" from version 0.0.1 to version 0.0.2"
3209
+ },
3210
+ {
3211
+ "cmd": "diff '$codeModified' ",
3212
+ "description": "show diff only for components with modified files. ignore config changes"
3213
+ },
3214
+ {
3215
+ "cmd": "diff foo 0.0.2 --parent",
3216
+ "description": "compare \"foo@0.0.2\" to its parent version. showing what changed in 0.0.2"
3443
3217
  }
3444
3218
  ]
3445
3219
  },
3446
3220
  {
3447
- "name": "stash <sub-command>",
3221
+ "name": "merge [component-pattern]",
3448
3222
  "alias": "",
3449
3223
  "options": [
3450
3224
  [
3451
- "p",
3452
- "pattern",
3453
- "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
3225
+ "",
3226
+ "ours",
3227
+ "DEPRECATED. use --auto-merge-resolve. in case of a conflict, keep the local modification"
3454
3228
  ],
3455
3229
  [
3456
- "m",
3457
- "message <string>",
3458
- "message to be attached to the stashed components"
3459
- ]
3460
- ],
3461
- "description": "stash modified components",
3462
- "extendedDescription": "",
3463
- "group": "version-control",
3464
- "private": false,
3465
- "commands": [
3466
- {
3467
- "name": "save",
3468
- "alias": "s",
3469
- "options": [
3470
- [
3471
- "p",
3472
- "pattern",
3473
- "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
3474
- ],
3475
- [
3476
- "",
3477
- "include-new",
3478
- "EXPERIMENTAL. by default, only modified components are stashed. use this flag to include new components"
3479
- ],
3480
- [
3481
- "m",
3482
- "message <string>",
3483
- "message to be attached to the stashed components"
3484
- ]
3485
- ],
3486
- "description": "stash modified components",
3487
- "extendedDescription": "",
3488
- "group": "version-control",
3489
- "private": false
3490
- },
3491
- {
3492
- "name": "load [stash-id]",
3493
- "alias": "pop",
3494
- "options": [
3495
- [
3496
- "r",
3497
- "auto-merge-resolve <merge-strategy>",
3498
- "in case of merge conflict, resolve according to the provided strategy: [ours, theirs, manual]"
3499
- ],
3500
- [
3501
- "",
3502
- "manual",
3503
- "same as \"--auto-merge-resolve manual\". in case of merge conflict, write the files with the conflict markers"
3504
- ],
3505
- [
3506
- "",
3507
- "force-ours",
3508
- "do not merge, preserve local files as is"
3509
- ],
3510
- [
3511
- "",
3512
- "force-theirs",
3513
- "do not merge, just overwrite with incoming files"
3514
- ]
3515
- ],
3516
- "description": "apply the changes according to the stash. if no stash-id provided, it loads the latest stash",
3517
- "extendedDescription": "",
3518
- "group": "version-control",
3519
- "private": false
3520
- },
3521
- {
3522
- "name": "list",
3523
- "alias": "",
3524
- "options": [],
3525
- "description": "list stash",
3526
- "extendedDescription": "",
3527
- "group": "version-control",
3528
- "private": false
3529
- }
3530
- ]
3531
- },
3532
- {
3533
- "name": "schema <pattern>",
3534
- "alias": "",
3535
- "options": [
3536
- [
3537
- "r",
3538
- "remote",
3539
- "fetch schema from remote scope (works for components not in workspace)"
3540
- ],
3541
- [
3542
- "j",
3543
- "json",
3544
- "return the component schema in json format"
3545
- ]
3546
- ],
3547
- "description": "extracts and displays the API schema (types, functions, classes, interfaces) of the specified component/s.",
3548
- "extendedDescription": "Extracts TypeScript definitions to provide a comprehensive view of a component's public API.\nShows detailed information about exported elements including classes, interfaces, functions, types, and enums with their respective signatures and documentation.\n\nyou can use a `<pattern>` for multiple component ids, such as `bit schema \"org.scope/utils/**\"`.\nuse comma to separate patterns and '!' to exclude. e.g. 'ui/**, !ui/button'\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nalways wrap the pattern with single quotes to avoid collision with shell commands.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern.\n",
3549
- "group": "info-analysis",
3550
- "private": false
3551
- },
3552
- {
3553
- "name": "test [component-pattern]",
3554
- "alias": "at",
3555
- "options": [
3556
- [
3557
- "w",
3558
- "watch",
3559
- "start the tester in watch mode."
3230
+ "",
3231
+ "theirs",
3232
+ "DEPRECATED. use --auto-merge-resolve. in case of a conflict, override the local modification with the specified version"
3560
3233
  ],
3561
3234
  [
3562
- "d",
3563
- "debug",
3564
- "start the tester in debug mode."
3235
+ "",
3236
+ "manual",
3237
+ "same as \"--auto-merge-resolve manual\". in case of merge conflict, write the files with the conflict markers"
3565
3238
  ],
3566
3239
  [
3567
- "a",
3568
- "all",
3569
- "DEPRECATED. (use --unmodified)"
3240
+ "r",
3241
+ "auto-merge-resolve <merge-strategy>",
3242
+ "in case of a conflict, resolve according to the strategy: [ours, theirs, manual]"
3570
3243
  ],
3571
3244
  [
3572
- "u",
3573
- "unmodified",
3574
- "test all components, not only new and modified"
3245
+ "",
3246
+ "abort",
3247
+ "in case of an unresolved merge, revert to pre-merge state"
3575
3248
  ],
3576
3249
  [
3577
3250
  "",
3578
- "junit <filepath>",
3579
- "write tests results as JUnit XML format into the specified file path"
3251
+ "resolve",
3252
+ "mark an unresolved merge as resolved and create a new snap with the changes"
3580
3253
  ],
3581
3254
  [
3582
3255
  "",
3583
- "coverage",
3584
- "show code coverage data"
3256
+ "no-snap",
3257
+ "do not auto snap even if the merge completed without conflicts"
3585
3258
  ],
3586
3259
  [
3587
- "e",
3588
- "env <id>",
3589
- "test only components assigned the given env"
3260
+ "",
3261
+ "build",
3262
+ "in case of snap during the merge, run the build-pipeline (similar to bit snap --build)"
3590
3263
  ],
3591
3264
  [
3592
3265
  "",
3593
- "update-snapshot",
3594
- "if supported by the tester, re-record every snapshot that fails during the test run"
3266
+ "verbose",
3267
+ "show details of components that were not merged successfully"
3595
3268
  ],
3596
3269
  [
3597
- "s",
3598
- "scope <scope-name>",
3599
- "DEPRECATED. (use the pattern instead, e.g. \"scopeName/**\"). name of the scope to test"
3270
+ "x",
3271
+ "skip-dependency-installation",
3272
+ "do not install new dependencies resulting from the merge"
3600
3273
  ],
3601
3274
  [
3602
- "j",
3603
- "json",
3604
- "return the results in json format"
3275
+ "m",
3276
+ "message <message>",
3277
+ "override the default message for the auto snap"
3605
3278
  ]
3606
3279
  ],
3607
- "description": "test components in the workspace. by default only runs tests for new and modified components",
3608
- "extendedDescription": "",
3609
- "group": "testing",
3280
+ "description": "merge changes of the remote head into local - auto-snaps all merged components",
3281
+ "extendedDescription": "merge changes of the remote head into local when they are diverged. when on a lane, merge the remote head of the lane into the local\nand creates snaps for merged components that have diverged, on the lane.\nif no ids are specified, all pending-merge components will be merged. (run \"bit status\" to list them).\noptionally use '--abort' to revert the last merge. to revert a lane merge, use \"bit lane merge-abort\" command.",
3282
+ "group": "version-control",
3610
3283
  "private": false,
3611
3284
  "arguments": [
3612
3285
  {
@@ -3616,269 +3289,38 @@
3616
3289
  ]
3617
3290
  },
3618
3291
  {
3619
- "name": "diff [component-pattern] [version] [to-version]",
3620
- "alias": "",
3292
+ "name": "lane [sub-command]",
3293
+ "alias": "l",
3621
3294
  "options": [
3622
3295
  [
3623
- "p",
3624
- "parent",
3625
- "compare the specified \"version\" to its immediate parent instead of comparing to the current one"
3296
+ "d",
3297
+ "details",
3298
+ "show more details on the state of each component in each lane"
3626
3299
  ],
3627
3300
  [
3628
- "v",
3629
- "verbose",
3630
- "show a more verbose output where possible"
3301
+ "j",
3302
+ "json",
3303
+ "show lanes details in json format"
3631
3304
  ],
3632
- [
3633
- "t",
3634
- "table",
3635
- "show tables instead of plain text for dependencies diff"
3636
- ]
3637
- ],
3638
- "description": "show the diff between the components' current source files and config, and their latest snapshot or tag",
3639
- "extendedDescription": "",
3640
- "group": "info-analysis",
3641
- "private": false,
3642
- "arguments": [
3643
- {
3644
- "name": "component-pattern",
3645
- "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
3646
- },
3647
- {
3648
- "name": "version",
3649
- "description": "the base version to compare from. if omitted, compares the workspace's current files to the component's latest version."
3650
- },
3651
- {
3652
- "name": "to-version",
3653
- "description": "the target version to compare against \"version\".\nif both \"version\" and \"to-version\" are provided, compare those two versions directly (ignoring the workspace)."
3654
- }
3655
- ],
3656
- "examples": [
3657
- {
3658
- "cmd": "diff",
3659
- "description": "show diff for all modified components"
3660
- },
3661
- {
3662
- "cmd": "diff foo",
3663
- "description": "show diff for a component \"foo\""
3664
- },
3665
- {
3666
- "cmd": "diff foo 0.0.1",
3667
- "description": "show diff for a component \"foo\" from the current state to version 0.0.1"
3668
- },
3669
- {
3670
- "cmd": "diff foo 0.0.1 0.0.2",
3671
- "description": "show diff for a component \"foo\" from version 0.0.1 to version 0.0.2"
3672
- },
3673
- {
3674
- "cmd": "diff '$codeModified' ",
3675
- "description": "show diff only for components with modified files. ignore config changes"
3676
- },
3677
- {
3678
- "cmd": "diff foo 0.0.2 --parent",
3679
- "description": "compare \"foo@0.0.2\" to its parent version. showing what changed in 0.0.2"
3680
- }
3681
- ]
3682
- },
3683
- {
3684
- "name": "log <id>",
3685
- "alias": "",
3686
- "options": [
3687
3305
  [
3688
3306
  "r",
3689
- "remote",
3690
- "show log of a remote component"
3307
+ "remote <remote-scope-name>",
3308
+ "show all remote lanes from the specified scope"
3691
3309
  ],
3692
3310
  [
3693
3311
  "",
3694
- "parents",
3695
- "show parents and lanes data"
3696
- ],
3697
- [
3698
- "o",
3699
- "one-line",
3700
- "show each log entry in one line"
3701
- ],
3702
- [
3703
- "f",
3704
- "full-hash",
3705
- "show full hash of the snap (default to the first 9 characters for --one-line/--parents flags)"
3706
- ],
3707
- [
3708
- "m",
3709
- "full-message",
3710
- "show full message of the snap (default to the first line for --one-line/--parents flags)"
3312
+ "merged",
3313
+ "list only merged lanes"
3711
3314
  ],
3712
3315
  [
3713
3316
  "",
3714
- "show-hidden",
3715
- "show hidden snaps (snaps are marked as hidden typically when the following tag has the same files/config)"
3716
- ],
3717
- [
3718
- "j",
3719
- "json",
3720
- "json format"
3317
+ "not-merged",
3318
+ "list only lanes that haven't been merged"
3721
3319
  ]
3722
3320
  ],
3723
- "description": "show components(s) version history",
3321
+ "description": "manage lanes - if no sub-command is used, runs \"bit lane list\"",
3724
3322
  "extendedDescription": "",
3725
- "group": "version-control",
3726
- "private": false,
3727
- "remoteOp": true,
3728
- "skipWorkspace": true,
3729
- "arguments": [
3730
- {
3731
- "name": "id",
3732
- "description": "component-id or component-name"
3733
- }
3734
- ]
3735
- },
3736
- {
3737
- "name": "log-file <filepath>",
3738
- "alias": "",
3739
- "options": [
3740
- [
3741
- "o",
3742
- "one-line",
3743
- "show each log entry in one line"
3744
- ]
3745
- ],
3746
- "description": "EXPERIMENTAL. show file history",
3747
- "extendedDescription": "",
3748
- "group": "version-control",
3749
- "private": false,
3750
- "arguments": [
3751
- {
3752
- "name": "filepath",
3753
- "description": "file path relative to the workspace"
3754
- }
3755
- ]
3756
- },
3757
- {
3758
- "name": "blame <filepath>",
3759
- "alias": "",
3760
- "options": [
3761
- [
3762
- "m",
3763
- "include-message",
3764
- "show the commit message"
3765
- ]
3766
- ],
3767
- "description": "EXPERIMENTAL. per line, show who and when was the last to modify it",
3768
- "extendedDescription": "",
3769
- "group": "version-control",
3770
- "private": false,
3771
- "arguments": [
3772
- {
3773
- "name": "filepath",
3774
- "description": "file path relative to the workspace"
3775
- }
3776
- ]
3777
- },
3778
- {
3779
- "name": "merge [component-pattern]",
3780
- "alias": "",
3781
- "options": [
3782
- [
3783
- "",
3784
- "ours",
3785
- "DEPRECATED. use --auto-merge-resolve. in case of a conflict, keep the local modification"
3786
- ],
3787
- [
3788
- "",
3789
- "theirs",
3790
- "DEPRECATED. use --auto-merge-resolve. in case of a conflict, override the local modification with the specified version"
3791
- ],
3792
- [
3793
- "",
3794
- "manual",
3795
- "same as \"--auto-merge-resolve manual\". in case of merge conflict, write the files with the conflict markers"
3796
- ],
3797
- [
3798
- "r",
3799
- "auto-merge-resolve <merge-strategy>",
3800
- "in case of a conflict, resolve according to the strategy: [ours, theirs, manual]"
3801
- ],
3802
- [
3803
- "",
3804
- "abort",
3805
- "in case of an unresolved merge, revert to pre-merge state"
3806
- ],
3807
- [
3808
- "",
3809
- "resolve",
3810
- "mark an unresolved merge as resolved and create a new snap with the changes"
3811
- ],
3812
- [
3813
- "",
3814
- "no-snap",
3815
- "do not auto snap even if the merge completed without conflicts"
3816
- ],
3817
- [
3818
- "",
3819
- "build",
3820
- "in case of snap during the merge, run the build-pipeline (similar to bit snap --build)"
3821
- ],
3822
- [
3823
- "",
3824
- "verbose",
3825
- "show details of components that were not merged successfully"
3826
- ],
3827
- [
3828
- "x",
3829
- "skip-dependency-installation",
3830
- "do not install new dependencies resulting from the merge"
3831
- ],
3832
- [
3833
- "m",
3834
- "message <message>",
3835
- "override the default message for the auto snap"
3836
- ]
3837
- ],
3838
- "description": "merge changes of the remote head into local - auto-snaps all merged components",
3839
- "extendedDescription": "merge changes of the remote head into local when they are diverged. when on a lane, merge the remote head of the lane into the local\nand creates snaps for merged components that have diverged, on the lane.\nif no ids are specified, all pending-merge components will be merged. (run \"bit status\" to list them).\noptionally use '--abort' to revert the last merge. to revert a lane merge, use \"bit lane merge-abort\" command.",
3840
- "group": "version-control",
3841
- "private": false,
3842
- "arguments": [
3843
- {
3844
- "name": "component-pattern",
3845
- "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
3846
- }
3847
- ]
3848
- },
3849
- {
3850
- "name": "lane [sub-command]",
3851
- "alias": "l",
3852
- "options": [
3853
- [
3854
- "d",
3855
- "details",
3856
- "show more details on the state of each component in each lane"
3857
- ],
3858
- [
3859
- "j",
3860
- "json",
3861
- "show lanes details in json format"
3862
- ],
3863
- [
3864
- "r",
3865
- "remote <remote-scope-name>",
3866
- "show all remote lanes from the specified scope"
3867
- ],
3868
- [
3869
- "",
3870
- "merged",
3871
- "list only merged lanes"
3872
- ],
3873
- [
3874
- "",
3875
- "not-merged",
3876
- "list only lanes that haven't been merged"
3877
- ]
3878
- ],
3879
- "description": "manage lanes - if no sub-command is used, runs \"bit lane list\"",
3880
- "extendedDescription": "",
3881
- "group": "collaborate",
3323
+ "group": "collaborate",
3882
3324
  "private": false,
3883
3325
  "remoteOp": true,
3884
3326
  "skipWorkspace": true,
@@ -4485,116 +3927,835 @@
4485
3927
  "skip confirmation"
4486
3928
  ],
4487
3929
  [
4488
- "x",
4489
- "skip-dependency-installation",
4490
- "do not install packages of the imported components"
3930
+ "x",
3931
+ "skip-dependency-installation",
3932
+ "do not install packages of the imported components"
3933
+ ]
3934
+ ],
3935
+ "description": "abort the recent lane-merge. revert the lane object and checkout accordingly",
3936
+ "extendedDescription": "restore the lane-object to its state before the last \"bit lane merge\" command.\nalso, checkout the workspace components according to the restored lane state",
3937
+ "private": true,
3938
+ "remoteOp": true
3939
+ },
3940
+ {
3941
+ "name": "merge-move <new-lane-name>",
3942
+ "alias": "",
3943
+ "options": [
3944
+ [
3945
+ "s",
3946
+ "scope <scope-name>",
3947
+ "remote scope to which this lane will be exported, default to the workspace.json's defaultScope (can be changed up to first export of the lane with \"bit lane change-scope\")"
3948
+ ]
3949
+ ],
3950
+ "description": "EXPERIMENT. move the current merge state into a new lane. the current lane will be reset",
3951
+ "extendedDescription": "this command is useful when you got a messy merge state that from one hand you don't want\nto loose the changes, but on the other hand, you want to keep your lane without those changes.\nthis command does the following:\n1. create a new lane with the current merge state. including all the filesystem changes. (in practice, it leaves the fs intact)\n2. reset the current lane to the state before the merge. so then once done with the new lane, you can switch to the current lane and it'll be clean.",
3952
+ "remoteOp": true
3953
+ }
3954
+ ]
3955
+ },
3956
+ {
3957
+ "name": "switch <lane>",
3958
+ "alias": "",
3959
+ "options": [
3960
+ [
3961
+ "h",
3962
+ "head",
3963
+ "switch to the head of the lane/main (fetches the latest changes from the remote)"
3964
+ ],
3965
+ [
3966
+ "r",
3967
+ "auto-merge-resolve <merge-strategy>",
3968
+ "merge local changes with the checked out version. strategy should be \"theirs\", \"ours\" or \"manual\""
3969
+ ],
3970
+ [
3971
+ "",
3972
+ "force-ours",
3973
+ "do not merge, preserve local files as is"
3974
+ ],
3975
+ [
3976
+ "",
3977
+ "force-theirs",
3978
+ "do not merge, just overwrite with incoming files"
3979
+ ],
3980
+ [
3981
+ "a",
3982
+ "get-all",
3983
+ "DEPRECATED. this is currently the default behavior"
3984
+ ],
3985
+ [
3986
+ "",
3987
+ "workspace-only",
3988
+ "checkout only the components in the workspace to the selected lane"
3989
+ ],
3990
+ [
3991
+ "x",
3992
+ "skip-dependency-installation",
3993
+ "do not install dependencies of the imported components"
3994
+ ],
3995
+ [
3996
+ "p",
3997
+ "pattern <component-pattern>",
3998
+ "switch only the lane components matching the specified component-pattern. only works when the workspace is empty\n\ncomponent name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
3999
+ ],
4000
+ [
4001
+ "n",
4002
+ "alias <string>",
4003
+ "relevant when the specified lane is a remote lane. create a local alias for the lane (doesnt affect the lane's name on the remote"
4004
+ ],
4005
+ [
4006
+ "",
4007
+ "verbose",
4008
+ "display detailed information about components that legitimately were not switched"
4009
+ ],
4010
+ [
4011
+ "j",
4012
+ "json",
4013
+ "return the output as JSON"
4014
+ ],
4015
+ [
4016
+ "",
4017
+ "branch",
4018
+ "create and checkout a new git branch named after the lane"
4019
+ ]
4020
+ ],
4021
+ "description": "switch to the specified lane",
4022
+ "extendedDescription": "",
4023
+ "group": "collaborate",
4024
+ "private": true,
4025
+ "arguments": [
4026
+ {
4027
+ "name": "lane",
4028
+ "description": "lane-name or lane-id (if lane is not local) to switch to"
4029
+ }
4030
+ ]
4031
+ },
4032
+ {
4033
+ "name": "cat-lane-history <lane-name>",
4034
+ "alias": "clh",
4035
+ "options": [],
4036
+ "description": "cat lane-history object by lane-name",
4037
+ "extendedDescription": "",
4038
+ "group": "advanced",
4039
+ "private": true
4040
+ },
4041
+ {
4042
+ "name": "insights [names...]",
4043
+ "alias": "",
4044
+ "options": [
4045
+ [
4046
+ "l",
4047
+ "list",
4048
+ "list all insights"
4049
+ ],
4050
+ [
4051
+ "j",
4052
+ "json",
4053
+ "return the insights in json format"
4054
+ ],
4055
+ [
4056
+ "",
4057
+ "include-deps",
4058
+ "include component dependencies that are not in this workspace"
4059
+ ]
4060
+ ],
4061
+ "description": "Insights on component graph",
4062
+ "extendedDescription": "",
4063
+ "group": "workspace-tools",
4064
+ "private": true
4065
+ },
4066
+ {
4067
+ "name": "status",
4068
+ "alias": "s",
4069
+ "options": [
4070
+ [
4071
+ "j",
4072
+ "json",
4073
+ "return a json version of the component"
4074
+ ],
4075
+ [
4076
+ "w",
4077
+ "warnings",
4078
+ "show warnings. by default, only issues that block tag/snap are shown"
4079
+ ],
4080
+ [
4081
+ "",
4082
+ "verbose",
4083
+ "show extra data: full snap hashes for staged components, and divergence point for lanes"
4084
+ ],
4085
+ [
4086
+ "l",
4087
+ "lanes",
4088
+ "when on a lane, show updates from main and updates from forked lanes"
4089
+ ],
4090
+ [
4091
+ "",
4092
+ "strict",
4093
+ "in case issues found, exit with code 1"
4094
+ ],
4095
+ [
4096
+ "c",
4097
+ "ignore-circular-dependencies",
4098
+ "do not check for circular dependencies to get the results quicker"
4099
+ ]
4100
+ ],
4101
+ "description": "present the current status of components in the workspace, including indication of detected issues",
4102
+ "extendedDescription": "",
4103
+ "group": "info-analysis",
4104
+ "private": false
4105
+ },
4106
+ {
4107
+ "name": "mini-status [component-pattern]",
4108
+ "alias": "ms",
4109
+ "options": [
4110
+ [
4111
+ "",
4112
+ "show-issues",
4113
+ "show component issues (slows down the command)"
4114
+ ],
4115
+ [
4116
+ "c",
4117
+ "ignore-circular-dependencies",
4118
+ "do not check for circular dependencies to get the results quicker (relevant when --show-issues flag is used)"
4119
+ ],
4120
+ [
4121
+ "j",
4122
+ "json",
4123
+ "json format"
4124
+ ]
4125
+ ],
4126
+ "description": "basic status for fast execution",
4127
+ "extendedDescription": "shows only modified/new components with code changes. for the full status, use \"bit status\".\nthis command only checks source code changes, it doesn't check for config/aspect/dependency changes",
4128
+ "group": "info-analysis",
4129
+ "private": true,
4130
+ "arguments": [
4131
+ {
4132
+ "name": "component-pattern",
4133
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
4134
+ }
4135
+ ]
4136
+ },
4137
+ {
4138
+ "name": "ci <sub-command>",
4139
+ "alias": "",
4140
+ "options": [],
4141
+ "description": "CI commands",
4142
+ "extendedDescription": "",
4143
+ "group": "collaborate",
4144
+ "private": false,
4145
+ "commands": [
4146
+ {
4147
+ "name": "verify",
4148
+ "alias": "",
4149
+ "options": [],
4150
+ "description": "CI commands",
4151
+ "extendedDescription": "",
4152
+ "group": "development",
4153
+ "private": false
4154
+ },
4155
+ {
4156
+ "name": "pr",
4157
+ "alias": "",
4158
+ "options": [
4159
+ [
4160
+ "m",
4161
+ "message <message>",
4162
+ "If set, set it as the snap message, if not, try and grab from git-commit-message"
4163
+ ],
4164
+ [
4165
+ "l",
4166
+ "lane <lane>",
4167
+ "If set, use as the lane name, if not available, grab from git-branch name"
4168
+ ],
4169
+ [
4170
+ "b",
4171
+ "build",
4172
+ "Set to true to build the app locally, false (default) will build on Ripple CI"
4173
+ ]
4174
+ ],
4175
+ "description": "This command is meant to run when a PR was open/updated and meant to export a lane to bit-cloud.",
4176
+ "extendedDescription": "",
4177
+ "group": "collaborate",
4178
+ "private": false
4179
+ },
4180
+ {
4181
+ "name": "merge",
4182
+ "alias": "",
4183
+ "options": [
4184
+ [
4185
+ "m",
4186
+ "message <message>",
4187
+ "If set, use it as the snap message, if not, try and grab from git-commit-message"
4188
+ ],
4189
+ [
4190
+ "b",
4191
+ "build",
4192
+ "Set to true to build the app locally, false (default) will build on Ripple CI"
4193
+ ]
4194
+ ],
4195
+ "description": "Merges a PR",
4196
+ "extendedDescription": "",
4197
+ "group": "collaborate",
4198
+ "private": false
4199
+ }
4200
+ ]
4201
+ },
4202
+ {
4203
+ "name": "mcp-server [sub-command]",
4204
+ "alias": "",
4205
+ "options": [
4206
+ [
4207
+ "",
4208
+ "include-additional <commands>",
4209
+ "Add specific commands to the default MCP tools set. Use comma-separated list in quotes"
4210
+ ],
4211
+ [
4212
+ "",
4213
+ "bit-bin <binary>",
4214
+ "Specify the binary to use for running Bit commands (default: \"bit\")"
4215
+ ],
4216
+ [
4217
+ "",
4218
+ "consumer-project",
4219
+ "For non-Bit workspaces that only consume Bit component packages. Enables only \"schema\", \"show\", and \"remote_search\" tools"
4220
+ ]
4221
+ ],
4222
+ "description": "Start the Bit CLI Model Context Protocol (MCP) server for programmatic and remote access to Bit commands.",
4223
+ "extendedDescription": "",
4224
+ "group": "advanced",
4225
+ "private": false,
4226
+ "commands": [
4227
+ {
4228
+ "name": "start",
4229
+ "alias": "",
4230
+ "options": [
4231
+ [
4232
+ "",
4233
+ "include-additional <commands>",
4234
+ "Add specific commands to the default MCP tools set. Use comma-separated list in quotes"
4235
+ ],
4236
+ [
4237
+ "",
4238
+ "bit-bin <binary>",
4239
+ "Specify the binary to use for running Bit commands (default: \"bit\")"
4240
+ ],
4241
+ [
4242
+ "",
4243
+ "consumer-project",
4244
+ "For non-Bit workspaces that only consume Bit component packages. Enables only \"schema\", \"show\", and \"remote_search\" tools"
4245
+ ]
4246
+ ],
4247
+ "description": "Start the MCP server",
4248
+ "extendedDescription": "Start the Model Context Protocol (MCP) server with the specified configuration",
4249
+ "group": "advanced",
4250
+ "private": false
4251
+ },
4252
+ {
4253
+ "name": "setup [editor]",
4254
+ "alias": "",
4255
+ "options": [
4256
+ [
4257
+ "",
4258
+ "consumer-project",
4259
+ "Configure for non-Bit workspaces that only consume Bit component packages"
4260
+ ],
4261
+ [
4262
+ "",
4263
+ "include-additional <commands>",
4264
+ "Add specific commands to the default MCP tools set. Use comma-separated list in quotes"
4265
+ ],
4266
+ [
4267
+ "g",
4268
+ "global",
4269
+ "Setup global configuration (default: workspace-specific)"
4270
+ ]
4271
+ ],
4272
+ "description": "Setup MCP integration with VS Code, Cursor, Windsurf, Roo Code, Cline, or other editors",
4273
+ "extendedDescription": "Creates or updates configuration files to integrate Bit MCP server with supported editors. Currently supports VS Code, Cursor, Windsurf, Roo Code, and Cline.",
4274
+ "group": "ungrouped",
4275
+ "private": false,
4276
+ "arguments": [
4277
+ {
4278
+ "name": "editor",
4279
+ "description": "Editor to setup (default: vscode). Available: vscode, cursor, windsurf, roo, cline"
4280
+ }
4281
+ ]
4282
+ },
4283
+ {
4284
+ "name": "rules [editor]",
4285
+ "alias": "",
4286
+ "options": [
4287
+ [
4288
+ "g",
4289
+ "global",
4290
+ "Write rules to global configuration (default: workspace-specific)"
4291
+ ],
4292
+ [
4293
+ "p",
4294
+ "print",
4295
+ "Print rules content to screen instead of writing to file"
4296
+ ],
4297
+ [
4298
+ "",
4299
+ "consumer-project",
4300
+ "Generate rules for consumer projects that only use Bit components as packages"
4301
+ ]
4302
+ ],
4303
+ "description": "Write Bit MCP rules/instructions file for VS Code, Cursor, Roo Code, Cline, or print to screen",
4304
+ "extendedDescription": "Creates or updates rules/instructions markdown files to provide AI assistants with guidance on using Bit MCP server. Currently supports VS Code, Cursor, Roo Code, and Cline. Use --print to display content on screen. Use --consumer-project for non-Bit workspaces that only consume components as packages.",
4305
+ "group": "ungrouped",
4306
+ "private": false,
4307
+ "arguments": [
4308
+ {
4309
+ "name": "editor",
4310
+ "description": "Editor to write rules for (default: vscode). Available: vscode, cursor, roo, cline"
4311
+ }
4312
+ ]
4313
+ }
4314
+ ]
4315
+ },
4316
+ {
4317
+ "name": "doctor [diagnosis-name]",
4318
+ "alias": "",
4319
+ "options": [
4320
+ [
4321
+ "j",
4322
+ "json",
4323
+ "return diagnoses in json format"
4324
+ ],
4325
+ [
4326
+ "",
4327
+ "list",
4328
+ "list all available diagnoses"
4329
+ ],
4330
+ [
4331
+ "s",
4332
+ "save [filePath]",
4333
+ "save diagnoses to a file"
4334
+ ],
4335
+ [
4336
+ "a",
4337
+ "archive [filePath]",
4338
+ "archive the workspace including diagnosis info (by default exclude node-modules and include .bit)"
4339
+ ],
4340
+ [
4341
+ "n",
4342
+ "include-node-modules",
4343
+ "relevant for --archive. include node_modules in the archive file"
4344
+ ],
4345
+ [
4346
+ "p",
4347
+ "include-public",
4348
+ "relevant for --archive. include public folder in the archive file"
4349
+ ],
4350
+ [
4351
+ "e",
4352
+ "exclude-local-scope",
4353
+ "relevant for --archive. exclude .bit or .git/bit from the archive file"
4354
+ ]
4355
+ ],
4356
+ "description": "diagnose a bit workspace",
4357
+ "extendedDescription": "",
4358
+ "group": "system",
4359
+ "private": false
4360
+ },
4361
+ {
4362
+ "name": "init [path]",
4363
+ "alias": "",
4364
+ "options": [
4365
+ [
4366
+ "n",
4367
+ "name <workspace-name>",
4368
+ "name of the workspace"
4369
+ ],
4370
+ [
4371
+ "",
4372
+ "generator <env-id>",
4373
+ "for multiple, separate by a comma. add env-ids into the generators field in the workspace config for future \"bit create\" templates"
4374
+ ],
4375
+ [
4376
+ "T",
4377
+ "standalone",
4378
+ "do not nest component store within .git directory and do not write config data inside package.json"
4379
+ ],
4380
+ [
4381
+ "",
4382
+ "no-package-json",
4383
+ "do not generate package.json"
4384
+ ],
4385
+ [
4386
+ "r",
4387
+ "reset",
4388
+ "write missing or damaged Bit files"
4389
+ ],
4390
+ [
4391
+ "",
4392
+ "reset-new",
4393
+ "reset .bitmap file as if the components were newly added and remove all model data (objects)"
4394
+ ],
4395
+ [
4396
+ "",
4397
+ "reset-lane-new",
4398
+ "same as reset-new, but it only resets components belong to lanes. main components are left intact"
4399
+ ],
4400
+ [
4401
+ "",
4402
+ "reset-hard",
4403
+ "delete all Bit files and directories, including Bit configuration, tracking and model data. Useful for re-starting workspace from scratch"
4404
+ ],
4405
+ [
4406
+ "",
4407
+ "reset-scope",
4408
+ "removes local scope (.bit or .git/bit). tags/snaps that have not been exported will be lost. workspace is left intact"
4409
+ ],
4410
+ [
4411
+ "d",
4412
+ "default-directory <default-directory>",
4413
+ "set the default directory pattern to import/create components into"
4414
+ ],
4415
+ [
4416
+ "",
4417
+ "default-scope <default-scope>",
4418
+ "set the default scope for components in the workspace"
4419
+ ],
4420
+ [
4421
+ "f",
4422
+ "force",
4423
+ "force workspace initialization without clearing local objects"
4424
+ ],
4425
+ [
4426
+ "b",
4427
+ "bare [name]",
4428
+ "initialize an empty bit bare scope"
4429
+ ],
4430
+ [
4431
+ "s",
4432
+ "shared <groupname>",
4433
+ "add group write permissions to a scope properly"
4434
+ ]
4435
+ ],
4436
+ "description": "create or reinitialize an empty workspace",
4437
+ "extendedDescription": "if the current directory is already a workspace, it validates that bit files are correct and rewrite them if needed.",
4438
+ "group": "workspace-setup",
4439
+ "private": false,
4440
+ "skipWorkspace": true
4441
+ },
4442
+ {
4443
+ "name": "version-history <sub-command>",
4444
+ "alias": "vh",
4445
+ "options": [],
4446
+ "description": "manage the version-history of components",
4447
+ "extendedDescription": "",
4448
+ "group": "version-control",
4449
+ "private": false,
4450
+ "commands": [
4451
+ {
4452
+ "name": "graph <component-id>",
4453
+ "alias": "",
4454
+ "options": [
4455
+ [
4456
+ "s",
4457
+ "short-hash",
4458
+ "show only 9 chars of the hash"
4459
+ ],
4460
+ [
4461
+ "m",
4462
+ "mark <string>",
4463
+ "paint the given node-ids in the graph in red color, for multiple, separate by commas"
4464
+ ],
4465
+ [
4466
+ "",
4467
+ "png",
4468
+ "save the graph as a png file instead of svg. requires \"graphviz\" to be installed"
4469
+ ],
4470
+ [
4471
+ "l",
4472
+ "layout <name>",
4473
+ "GraphVis layout. default to \"dot\". options are [circo, dot, fdp, neato, osage, patchwork, sfdp, twopi]"
4474
+ ],
4475
+ [
4476
+ "",
4477
+ "limit <number>",
4478
+ "limit the number of nodes in the graph (starting from the heads)"
4479
+ ]
4480
+ ],
4481
+ "description": "generate a graph of the version history of a component and save as an SVG file",
4482
+ "extendedDescription": "",
4483
+ "group": "info-analysis",
4484
+ "private": false
4485
+ },
4486
+ {
4487
+ "name": "show <component-id>",
4488
+ "alias": "vh",
4489
+ "options": [
4490
+ [
4491
+ "s",
4492
+ "short-hash",
4493
+ "show only 9 chars of the hash"
4494
+ ],
4495
+ [
4496
+ "j",
4497
+ "json",
4498
+ "json format"
4499
+ ]
4500
+ ],
4501
+ "description": "show the version-history of a component",
4502
+ "extendedDescription": "",
4503
+ "group": "info-analysis",
4504
+ "private": false
4505
+ },
4506
+ {
4507
+ "name": "build <component-pattern>",
4508
+ "alias": "",
4509
+ "options": [
4510
+ [
4511
+ "",
4512
+ "from-snap <snap>",
4513
+ "build the version history from a specific snap. the pattern must be a single component-id"
4514
+ ],
4515
+ [
4516
+ "",
4517
+ "from-all-lanes",
4518
+ "build the version history from the heads of all lanes that include this component"
4519
+ ],
4520
+ [
4521
+ "",
4522
+ "delete-existing",
4523
+ "delete the existing version history before building it"
4524
+ ],
4525
+ [
4526
+ "",
4527
+ "remote <scope>",
4528
+ "make the change on the remote scope"
4529
+ ]
4530
+ ],
4531
+ "description": "rebuild the version history of a component. helpful when it got corrupted for some reason",
4532
+ "extendedDescription": "",
4533
+ "group": "info-analysis",
4534
+ "private": false,
4535
+ "arguments": [
4536
+ {
4537
+ "name": "component-pattern",
4538
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
4539
+ }
4540
+ ]
4541
+ }
4542
+ ]
4543
+ },
4544
+ {
4545
+ "name": "cat-version-history <id>",
4546
+ "alias": "cvh",
4547
+ "options": [
4548
+ [
4549
+ "j",
4550
+ "json",
4551
+ "json format"
4552
+ ]
4553
+ ],
4554
+ "description": "cat version-history object by component-id",
4555
+ "extendedDescription": "",
4556
+ "group": "advanced",
4557
+ "private": true
4558
+ },
4559
+ {
4560
+ "name": "stash <sub-command>",
4561
+ "alias": "",
4562
+ "options": [
4563
+ [
4564
+ "p",
4565
+ "pattern",
4566
+ "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
4567
+ ],
4568
+ [
4569
+ "m",
4570
+ "message <string>",
4571
+ "message to be attached to the stashed components"
4572
+ ]
4573
+ ],
4574
+ "description": "stash modified components",
4575
+ "extendedDescription": "",
4576
+ "group": "version-control",
4577
+ "private": false,
4578
+ "commands": [
4579
+ {
4580
+ "name": "save",
4581
+ "alias": "s",
4582
+ "options": [
4583
+ [
4584
+ "p",
4585
+ "pattern",
4586
+ "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
4587
+ ],
4588
+ [
4589
+ "",
4590
+ "include-new",
4591
+ "EXPERIMENTAL. by default, only modified components are stashed. use this flag to include new components"
4592
+ ],
4593
+ [
4594
+ "m",
4595
+ "message <string>",
4596
+ "message to be attached to the stashed components"
4597
+ ]
4598
+ ],
4599
+ "description": "stash modified components",
4600
+ "extendedDescription": "",
4601
+ "group": "version-control",
4602
+ "private": false
4603
+ },
4604
+ {
4605
+ "name": "load [stash-id]",
4606
+ "alias": "pop",
4607
+ "options": [
4608
+ [
4609
+ "r",
4610
+ "auto-merge-resolve <merge-strategy>",
4611
+ "in case of merge conflict, resolve according to the provided strategy: [ours, theirs, manual]"
4612
+ ],
4613
+ [
4614
+ "",
4615
+ "manual",
4616
+ "same as \"--auto-merge-resolve manual\". in case of merge conflict, write the files with the conflict markers"
4617
+ ],
4618
+ [
4619
+ "",
4620
+ "force-ours",
4621
+ "do not merge, preserve local files as is"
4622
+ ],
4623
+ [
4624
+ "",
4625
+ "force-theirs",
4626
+ "do not merge, just overwrite with incoming files"
4491
4627
  ]
4492
4628
  ],
4493
- "description": "abort the recent lane-merge. revert the lane object and checkout accordingly",
4494
- "extendedDescription": "restore the lane-object to its state before the last \"bit lane merge\" command.\nalso, checkout the workspace components according to the restored lane state",
4495
- "private": true,
4496
- "remoteOp": true
4629
+ "description": "apply the changes according to the stash. if no stash-id provided, it loads the latest stash",
4630
+ "extendedDescription": "",
4631
+ "group": "version-control",
4632
+ "private": false
4497
4633
  },
4498
4634
  {
4499
- "name": "merge-move <new-lane-name>",
4635
+ "name": "list",
4500
4636
  "alias": "",
4501
- "options": [
4502
- [
4503
- "s",
4504
- "scope <scope-name>",
4505
- "remote scope to which this lane will be exported, default to the workspace.json's defaultScope (can be changed up to first export of the lane with \"bit lane change-scope\")"
4506
- ]
4507
- ],
4508
- "description": "EXPERIMENT. move the current merge state into a new lane. the current lane will be reset",
4509
- "extendedDescription": "this command is useful when you got a messy merge state that from one hand you don't want\nto loose the changes, but on the other hand, you want to keep your lane without those changes.\nthis command does the following:\n1. create a new lane with the current merge state. including all the filesystem changes. (in practice, it leaves the fs intact)\n2. reset the current lane to the state before the merge. so then once done with the new lane, you can switch to the current lane and it'll be clean.",
4510
- "remoteOp": true
4637
+ "options": [],
4638
+ "description": "list stash",
4639
+ "extendedDescription": "",
4640
+ "group": "version-control",
4641
+ "private": false
4511
4642
  }
4512
4643
  ]
4513
4644
  },
4514
4645
  {
4515
- "name": "switch <lane>",
4646
+ "name": "schema <pattern>",
4516
4647
  "alias": "",
4517
4648
  "options": [
4518
- [
4519
- "h",
4520
- "head",
4521
- "switch to the head of the lane/main (fetches the latest changes from the remote)"
4522
- ],
4523
4649
  [
4524
4650
  "r",
4525
- "auto-merge-resolve <merge-strategy>",
4526
- "merge local changes with the checked out version. strategy should be \"theirs\", \"ours\" or \"manual\""
4527
- ],
4528
- [
4529
- "",
4530
- "force-ours",
4531
- "do not merge, preserve local files as is"
4651
+ "remote",
4652
+ "fetch schema from remote scope (works for components not in workspace)"
4532
4653
  ],
4533
4654
  [
4534
- "",
4535
- "force-theirs",
4536
- "do not merge, just overwrite with incoming files"
4537
- ],
4655
+ "j",
4656
+ "json",
4657
+ "return the component schema in json format"
4658
+ ]
4659
+ ],
4660
+ "description": "extracts and displays the API schema (types, functions, classes, interfaces) of the specified component/s.",
4661
+ "extendedDescription": "Extracts TypeScript definitions to provide a comprehensive view of a component's public API.\nShows detailed information about exported elements including classes, interfaces, functions, types, and enums with their respective signatures and documentation.\n\nyou can use a `<pattern>` for multiple component ids, such as `bit schema \"org.scope/utils/**\"`.\nuse comma to separate patterns and '!' to exclude. e.g. 'ui/**, !ui/button'\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nalways wrap the pattern with single quotes to avoid collision with shell commands.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern.\n",
4662
+ "group": "info-analysis",
4663
+ "private": false
4664
+ },
4665
+ {
4666
+ "name": "log <id>",
4667
+ "alias": "",
4668
+ "options": [
4538
4669
  [
4539
- "a",
4540
- "get-all",
4541
- "DEPRECATED. this is currently the default behavior"
4670
+ "r",
4671
+ "remote",
4672
+ "show log of a remote component"
4542
4673
  ],
4543
4674
  [
4544
4675
  "",
4545
- "workspace-only",
4546
- "checkout only the components in the workspace to the selected lane"
4676
+ "parents",
4677
+ "show parents and lanes data"
4547
4678
  ],
4548
4679
  [
4549
- "x",
4550
- "skip-dependency-installation",
4551
- "do not install dependencies of the imported components"
4680
+ "o",
4681
+ "one-line",
4682
+ "show each log entry in one line"
4552
4683
  ],
4553
4684
  [
4554
- "p",
4555
- "pattern <component-pattern>",
4556
- "switch only the lane components matching the specified component-pattern. only works when the workspace is empty\n\ncomponent name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
4685
+ "f",
4686
+ "full-hash",
4687
+ "show full hash of the snap (default to the first 9 characters for --one-line/--parents flags)"
4557
4688
  ],
4558
4689
  [
4559
- "n",
4560
- "alias <string>",
4561
- "relevant when the specified lane is a remote lane. create a local alias for the lane (doesnt affect the lane's name on the remote"
4690
+ "m",
4691
+ "full-message",
4692
+ "show full message of the snap (default to the first line for --one-line/--parents flags)"
4562
4693
  ],
4563
4694
  [
4564
4695
  "",
4565
- "verbose",
4566
- "display detailed information about components that legitimately were not switched"
4696
+ "show-hidden",
4697
+ "show hidden snaps (snaps are marked as hidden typically when the following tag has the same files/config)"
4567
4698
  ],
4568
4699
  [
4569
4700
  "j",
4570
4701
  "json",
4571
- "return the output as JSON"
4572
- ],
4702
+ "json format"
4703
+ ]
4704
+ ],
4705
+ "description": "show components(s) version history",
4706
+ "extendedDescription": "",
4707
+ "group": "version-control",
4708
+ "private": false,
4709
+ "remoteOp": true,
4710
+ "skipWorkspace": true,
4711
+ "arguments": [
4712
+ {
4713
+ "name": "id",
4714
+ "description": "component-id or component-name"
4715
+ }
4716
+ ]
4717
+ },
4718
+ {
4719
+ "name": "log-file <filepath>",
4720
+ "alias": "",
4721
+ "options": [
4573
4722
  [
4574
- "",
4575
- "branch",
4576
- "create and checkout a new git branch named after the lane"
4723
+ "o",
4724
+ "one-line",
4725
+ "show each log entry in one line"
4577
4726
  ]
4578
4727
  ],
4579
- "description": "switch to the specified lane",
4728
+ "description": "EXPERIMENTAL. show file history",
4580
4729
  "extendedDescription": "",
4581
- "group": "collaborate",
4582
- "private": true,
4730
+ "group": "version-control",
4731
+ "private": false,
4583
4732
  "arguments": [
4584
4733
  {
4585
- "name": "lane",
4586
- "description": "lane-name or lane-id (if lane is not local) to switch to"
4734
+ "name": "filepath",
4735
+ "description": "file path relative to the workspace"
4587
4736
  }
4588
4737
  ]
4589
4738
  },
4590
4739
  {
4591
- "name": "cat-lane-history <lane-name>",
4592
- "alias": "clh",
4593
- "options": [],
4594
- "description": "cat lane-history object by lane-name",
4740
+ "name": "blame <filepath>",
4741
+ "alias": "",
4742
+ "options": [
4743
+ [
4744
+ "m",
4745
+ "include-message",
4746
+ "show the commit message"
4747
+ ]
4748
+ ],
4749
+ "description": "EXPERIMENTAL. per line, show who and when was the last to modify it",
4595
4750
  "extendedDescription": "",
4596
- "group": "advanced",
4597
- "private": true
4751
+ "group": "version-control",
4752
+ "private": false,
4753
+ "arguments": [
4754
+ {
4755
+ "name": "filepath",
4756
+ "description": "file path relative to the workspace"
4757
+ }
4758
+ ]
4598
4759
  },
4599
4760
  {
4600
4761
  "name": "server",
@@ -4807,102 +4968,6 @@
4807
4968
  }
4808
4969
  ]
4809
4970
  },
4810
- {
4811
- "name": "insights [names...]",
4812
- "alias": "",
4813
- "options": [
4814
- [
4815
- "l",
4816
- "list",
4817
- "list all insights"
4818
- ],
4819
- [
4820
- "j",
4821
- "json",
4822
- "return the insights in json format"
4823
- ],
4824
- [
4825
- "",
4826
- "include-deps",
4827
- "include component dependencies that are not in this workspace"
4828
- ]
4829
- ],
4830
- "description": "Insights on component graph",
4831
- "extendedDescription": "",
4832
- "group": "workspace-tools",
4833
- "private": true
4834
- },
4835
- {
4836
- "name": "status",
4837
- "alias": "s",
4838
- "options": [
4839
- [
4840
- "j",
4841
- "json",
4842
- "return a json version of the component"
4843
- ],
4844
- [
4845
- "w",
4846
- "warnings",
4847
- "show warnings. by default, only issues that block tag/snap are shown"
4848
- ],
4849
- [
4850
- "",
4851
- "verbose",
4852
- "show extra data: full snap hashes for staged components, and divergence point for lanes"
4853
- ],
4854
- [
4855
- "l",
4856
- "lanes",
4857
- "when on a lane, show updates from main and updates from forked lanes"
4858
- ],
4859
- [
4860
- "",
4861
- "strict",
4862
- "in case issues found, exit with code 1"
4863
- ],
4864
- [
4865
- "c",
4866
- "ignore-circular-dependencies",
4867
- "do not check for circular dependencies to get the results quicker"
4868
- ]
4869
- ],
4870
- "description": "present the current status of components in the workspace, including indication of detected issues",
4871
- "extendedDescription": "",
4872
- "group": "info-analysis",
4873
- "private": false
4874
- },
4875
- {
4876
- "name": "mini-status [component-pattern]",
4877
- "alias": "ms",
4878
- "options": [
4879
- [
4880
- "",
4881
- "show-issues",
4882
- "show component issues (slows down the command)"
4883
- ],
4884
- [
4885
- "c",
4886
- "ignore-circular-dependencies",
4887
- "do not check for circular dependencies to get the results quicker (relevant when --show-issues flag is used)"
4888
- ],
4889
- [
4890
- "j",
4891
- "json",
4892
- "json format"
4893
- ]
4894
- ],
4895
- "description": "basic status for fast execution",
4896
- "extendedDescription": "shows only modified/new components with code changes. for the full status, use \"bit status\".\nthis command only checks source code changes, it doesn't check for config/aspect/dependency changes",
4897
- "group": "info-analysis",
4898
- "private": true,
4899
- "arguments": [
4900
- {
4901
- "name": "component-pattern",
4902
- "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nwrap the pattern with quotes. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\".\nuse '$' prefix to filter by states/attributes, e.g. '$deprecated', '$modified' or '$env:teambit.react/react'.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern."
4903
- }
4904
- ]
4905
- },
4906
4971
  {
4907
4972
  "name": "clear-cache",
4908
4973
  "alias": "cc",