@teambit/harmony.content.cli-reference 1.95.65 → 1.95.66

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.
@@ -33,11 +33,21 @@
33
33
  "reset-hard",
34
34
  "delete all Bit files and directories, including Bit configuration, tracking and model data. Useful for re-start using Bit from scratch"
35
35
  ],
36
+ [
37
+ "",
38
+ "reset-scope",
39
+ "removes local scope (.bit or .git/bit). snaps that were not exported will be lost. workspace left intact"
40
+ ],
36
41
  [
37
42
  "d",
38
43
  "default-directory <default-directory>",
39
44
  "set up default directory to import components into"
40
45
  ],
46
+ [
47
+ "",
48
+ "default-scope <default-scope>",
49
+ "set up default scope for all components in the workspace"
50
+ ],
41
51
  [
42
52
  "p",
43
53
  "package-manager <package-manager>",
@@ -65,52 +75,6 @@
65
75
  "private": false,
66
76
  "skipWorkspace": true
67
77
  },
68
- {
69
- "name": "list [remote-scope]",
70
- "alias": "ls",
71
- "options": [
72
- [
73
- "i",
74
- "ids",
75
- "show only component ids unformatted"
76
- ],
77
- [
78
- "s",
79
- "scope",
80
- "show only components stored in the local scope, including indirect dependencies"
81
- ],
82
- [
83
- "b",
84
- "bare",
85
- "DEPRECATED. use --raw instead"
86
- ],
87
- [
88
- "r",
89
- "raw",
90
- "show raw output (only components ids, no styling)"
91
- ],
92
- [
93
- "o",
94
- "outdated",
95
- "show latest versions from remotes"
96
- ],
97
- [
98
- "j",
99
- "json",
100
- "show the output in JSON format"
101
- ],
102
- [
103
- "n",
104
- "namespace <string>",
105
- "show only specified namespace by using wildcards"
106
- ]
107
- ],
108
- "description": "list components on a workspace, local scope or a remote scope.",
109
- "extendedDescription": "https://bit.dev/docs/reference/cli-reference#list",
110
- "group": "discover",
111
- "private": false,
112
- "skipWorkspace": true
113
- },
114
78
  {
115
79
  "name": "config",
116
80
  "alias": "",
@@ -256,7 +220,7 @@
256
220
  "private": true
257
221
  },
258
222
  {
259
- "name": "dependents <id>",
223
+ "name": "dependents <component-name>",
260
224
  "alias": "",
261
225
  "options": [],
262
226
  "description": "EXPERIMENTAL. show dependents of the given component",
@@ -264,21 +228,6 @@
264
228
  "group": "info",
265
229
  "private": false
266
230
  },
267
- {
268
- "name": "dependencies <id>",
269
- "alias": "",
270
- "options": [
271
- [
272
- "d",
273
- "debug",
274
- "show the immediate dependencies and how their version was determined"
275
- ]
276
- ],
277
- "description": "EXPERIMENTAL. show dependencies (direct and indirect) of the given component",
278
- "extendedDescription": "",
279
- "group": "info",
280
- "private": false
281
- },
282
231
  {
283
232
  "name": "_log <path> <args>",
284
233
  "alias": "",
@@ -365,21 +314,6 @@
365
314
  "private": true,
366
315
  "internal": true
367
316
  },
368
- {
369
- "name": "inject-conf [id]",
370
- "alias": "",
371
- "options": [
372
- [
373
- "f",
374
- "force",
375
- "force injecting even if there are config files changes"
376
- ]
377
- ],
378
- "description": "injecting components configuration",
379
- "extendedDescription": "",
380
- "group": "ungrouped",
381
- "private": true
382
- },
383
317
  {
384
318
  "name": "_scope <path> <args>",
385
319
  "alias": "",
@@ -390,36 +324,6 @@
390
324
  "private": true,
391
325
  "internal": true
392
326
  },
393
- {
394
- "name": "ci-update <id> [scopePath]",
395
- "alias": "",
396
- "options": [
397
- [
398
- "d",
399
- "directory [file]",
400
- "directory to run ci-update"
401
- ],
402
- [
403
- "k",
404
- "keep",
405
- "keep test environment after run (default false)"
406
- ],
407
- [
408
- "c",
409
- "no-cache",
410
- "ignore component cache when creating dist file"
411
- ],
412
- [
413
- "o",
414
- "output [file]",
415
- "save ci results to file system"
416
- ]
417
- ],
418
- "description": "run an update for build and test of a certain bit-component",
419
- "extendedDescription": "",
420
- "group": "ungrouped",
421
- "private": true
422
- },
423
327
  {
424
328
  "name": "cat-scope [scopePath]",
425
329
  "alias": "",
@@ -515,21 +419,11 @@
515
419
  "main <file>",
516
420
  "define entry point for the components"
517
421
  ],
518
- [
519
- "t",
520
- "tests <file>/\"<file>,<file>\"",
521
- "specify test files to track. use quotation marks to list files or use a glob pattern"
522
- ],
523
422
  [
524
423
  "n",
525
424
  "namespace <namespace>",
526
425
  "organize component in a namespace"
527
426
  ],
528
- [
529
- "e",
530
- "exclude <file>/\"<file>,<file>\"",
531
- "exclude file from being tracked. use quotation marks to list files or use a glob pattern"
532
- ],
533
427
  [
534
428
  "o",
535
429
  "override <boolean>",
@@ -547,22 +441,7 @@
547
441
  "private": false
548
442
  },
549
443
  {
550
- "name": "untrack [ids...]",
551
- "alias": "u",
552
- "options": [
553
- [
554
- "a",
555
- "all",
556
- "revert add for all tracked components"
557
- ]
558
- ],
559
- "description": "DEPRECATED (use \"bit remove\" instead). untrack a new component(s)\n https://legacy-docs.bit.dev/docs/add-and-isolate-components#untracking-components\n you can use a pattern for multiple ids, such as bit untrack \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
560
- "extendedDescription": "",
561
- "group": "ungrouped",
562
- "private": true
563
- },
564
- {
565
- "name": "untag [id] [version]",
444
+ "name": "untag [component-name] [component-version]",
566
445
  "alias": "",
567
446
  "options": [
568
447
  [
@@ -581,67 +460,20 @@
581
460
  "revert the tag even if used as a dependency. WARNING: components that depend on this tag will corrupt"
582
461
  ]
583
462
  ],
584
- "description": "revert versions tagged for component(s)",
463
+ "description": "revert tagged or snapped versions for component(s)",
585
464
  "extendedDescription": "https://bit.dev/docs/components/tags#undoing-a-tag\nyou can use a pattern for multiple ids, such as bit untag \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
586
465
  "group": "development",
587
- "private": false
466
+ "private": true
588
467
  },
589
468
  {
590
- "name": "move <existing-dir> <new-dir>",
469
+ "name": "move <current-component-dir> <new-component-dir>",
591
470
  "alias": "mv",
592
- "options": [
593
- [
594
- "c",
595
- "component",
596
- "move component files that are spread over multiple directories to one directory. synopsis: `move <component-id> <directory>`"
597
- ]
598
- ],
471
+ "options": [],
599
472
  "description": "move a component to a different filesystem path",
600
473
  "extendedDescription": "move files or directories of component(s)\n https://bit.dev/docs/workspace/moving-components",
601
474
  "group": "development",
602
475
  "private": false
603
476
  },
604
- {
605
- "name": "remove <ids...>",
606
- "alias": "rm",
607
- "options": [
608
- [
609
- "r",
610
- "remote",
611
- "remove a component from a remote scope"
612
- ],
613
- [
614
- "t",
615
- "track",
616
- "keep tracking component (default = false)"
617
- ],
618
- [
619
- "d",
620
- "delete-files",
621
- "DEPRECATED (this is now the default). delete local component files"
622
- ],
623
- [
624
- "",
625
- "keep-files",
626
- "keep component files (just untrack the component)"
627
- ],
628
- [
629
- "f",
630
- "force",
631
- "removes the component from the scope, even if used as a dependency. WARNING: components that depend on this component will corrupt"
632
- ],
633
- [
634
- "s",
635
- "silent",
636
- "skip confirmation"
637
- ]
638
- ],
639
- "description": "remove component(s) from your workspace, or a remote scope",
640
- "extendedDescription": "https://bit.dev/docs/components/removing-components\nyou can use a pattern for multiple ids, such as bit remove \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
641
- "group": "collaborate",
642
- "private": false,
643
- "skipWorkspace": true
644
- },
645
477
  {
646
478
  "name": "_delete <path> <args>",
647
479
  "alias": "",
@@ -652,26 +484,6 @@
652
484
  "private": true,
653
485
  "internal": true
654
486
  },
655
- {
656
- "name": "_deprecate <path> <args>",
657
- "alias": "",
658
- "options": [],
659
- "description": "deprecate a component from a scope",
660
- "extendedDescription": "",
661
- "group": "ungrouped",
662
- "private": true,
663
- "internal": true
664
- },
665
- {
666
- "name": "_undeprecate <path> <args>",
667
- "alias": "",
668
- "options": [],
669
- "description": "undeprecate a component from a scope",
670
- "extendedDescription": "",
671
- "group": "ungrouped",
672
- "private": true,
673
- "internal": true
674
- },
675
487
  {
676
488
  "name": "_latest <path> <args>",
677
489
  "alias": "",
@@ -682,76 +494,6 @@
682
494
  "private": true,
683
495
  "internal": true
684
496
  },
685
- {
686
- "name": "checkout [values...]",
687
- "alias": "U",
688
- "options": [
689
- [
690
- "i",
691
- "interactive-merge",
692
- "when a component is modified and the merge process found conflicts, display options to resolve them"
693
- ],
694
- [
695
- "o",
696
- "ours",
697
- "in case of a conflict, override the used version with the current modification"
698
- ],
699
- [
700
- "t",
701
- "theirs",
702
- "in case of a conflict, override the current modification with the specified version"
703
- ],
704
- [
705
- "m",
706
- "manual",
707
- "in case of a conflict, leave the files with a conflict state to resolve them manually later"
708
- ],
709
- [
710
- "r",
711
- "reset",
712
- "remove local changes"
713
- ],
714
- [
715
- "a",
716
- "all",
717
- "all components"
718
- ],
719
- [
720
- "v",
721
- "verbose",
722
- "showing verbose output for inspection"
723
- ],
724
- [
725
- "",
726
- "skip-npm-install",
727
- "DEPRECATED. use \"--skip-dependency-installation\" instead"
728
- ],
729
- [
730
- "",
731
- "skip-dependency-installation",
732
- "do not install packages of the imported components"
733
- ],
734
- [
735
- "",
736
- "ignore-package-json",
737
- "do not generate package.json for the imported component(s). (it automatically enables skip-npm-install and save-dependencies-as-components flags)"
738
- ],
739
- [
740
- "",
741
- "conf [path]",
742
- "write the configuration file (bit.json) and the envs configuration files (use --conf without path to write to the default dir)"
743
- ],
744
- [
745
- "",
746
- "ignore-dist",
747
- "do not write dist files (when exist)"
748
- ]
749
- ],
750
- "description": "switch between component versions or remove local changes",
751
- "extendedDescription": "\n `bit checkout <version> [ids...]` => checkout the specified ids (or all components when --all is used) to the specified version\n `bit checkout latest [ids...]` => checkout the specified ids (or all components when --all is used) to their latest versions\n `bit checkout [ids...] --reset` => remove local modifications from the specified ids (or all components when --all is used)\n you can use a pattern for multiple ids, such as bit checkout 0.0.1 \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
752
- "group": "development",
753
- "private": false
754
- },
755
497
  {
756
498
  "name": "diff [values...]",
757
499
  "alias": "",
@@ -767,7 +509,7 @@
767
509
  "show tables instead of plain text for dependencies diff"
768
510
  ]
769
511
  ],
770
- "description": "show diff between components files",
512
+ "description": "show the diff between the components' source files and config",
771
513
  "extendedDescription": "bit diff => compare all modified components to their model version\n bit diff [ids...] => compare the specified components against their modified states\n bit diff [id] [version] => compare the specified version to used or modified files\n bit diff [id] [version] [to_version] => compare the specified version files to to_version files\n you can use a pattern for multiple ids, such as bit diff \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
772
514
  "group": "development",
773
515
  "private": false
@@ -798,11 +540,11 @@
798
540
  ],
799
541
  [
800
542
  "",
801
- "machine-name <string>",
543
+ "machine-name <name>",
802
544
  "specify machine-name to pair with the token (useful for CI to avoid accidentally revoke the token)"
803
545
  ]
804
546
  ],
805
- "description": "log the CLI into Bit Cloud",
547
+ "description": "log in to Bit cloud",
806
548
  "extendedDescription": "",
807
549
  "group": "general",
808
550
  "private": false,
@@ -825,11 +567,6 @@
825
567
  "v",
826
568
  "verbose",
827
569
  "showing logs for the migration process"
828
- ],
829
- [
830
- "h",
831
- "harmony",
832
- "migrate workspace from legacy to Harmony"
833
570
  ]
834
571
  ],
835
572
  "description": "migrate scope to the current version",
@@ -997,23 +734,13 @@
997
734
  "private": false
998
735
  },
999
736
  {
1000
- "name": "use [ids...]",
1001
- "alias": "",
1002
- "options": [],
1003
- "description": "set up aspects in the workspace/scope config",
1004
- "extendedDescription": "",
1005
- "group": "collaborate",
1006
- "private": false,
1007
- "remoteOp": true
1008
- },
1009
- {
1010
- "name": "show <id>",
737
+ "name": "show <component-name>",
1011
738
  "alias": "",
1012
739
  "options": [
1013
740
  [
1014
741
  "j",
1015
742
  "json",
1016
- "return the component data in json format"
743
+ "return the component data in a json format"
1017
744
  ],
1018
745
  [
1019
746
  "l",
@@ -1028,34 +755,25 @@
1028
755
  [
1029
756
  "c",
1030
757
  "compare",
1031
- "compare current file system component to latest tagged component [default=latest]. only works in legacy."
758
+ "compare current file system component to the latest tagged component [default=latest]. only works in legacy."
1032
759
  ]
1033
760
  ],
1034
- "description": "show a component",
761
+ "description": "display the component's essential information",
1035
762
  "extendedDescription": "",
1036
763
  "group": "info",
1037
- "private": false
1038
- },
1039
- {
1040
- "name": "globals",
1041
- "alias": "",
1042
- "options": [
1043
- [
1044
- "j",
1045
- "json",
1046
- "json format"
1047
- ]
1048
- ],
1049
- "description": "list all globals",
1050
- "extendedDescription": "",
1051
- "group": "workspace",
1052
- "private": false
764
+ "private": false,
765
+ "arguments": [
766
+ {
767
+ "name": "component-name",
768
+ "description": "component name or component id"
769
+ }
770
+ ]
1053
771
  },
1054
772
  {
1055
773
  "name": "envs",
1056
774
  "alias": "env",
1057
775
  "options": [],
1058
- "description": "list all components envs",
776
+ "description": "list all components maintained by the workspace and their corresponding envs",
1059
777
  "extendedDescription": "",
1060
778
  "group": "development",
1061
779
  "private": false,
@@ -1070,36 +788,102 @@
1070
788
  "private": false
1071
789
  },
1072
790
  {
1073
- "name": "get <name>",
791
+ "name": "get <component-name>",
1074
792
  "alias": "",
1075
793
  "options": [],
1076
- "description": "show component's env details",
794
+ "description": "show information about a component's env",
1077
795
  "extendedDescription": "",
1078
796
  "group": "development",
1079
- "private": false
797
+ "private": false,
798
+ "arguments": [
799
+ {
800
+ "name": "component-name",
801
+ "description": "the 'component name' or 'component id' of the component its env you'd like to inspect"
802
+ }
803
+ ]
1080
804
  },
1081
805
  {
1082
- "name": "set <pattern> <env>",
806
+ "name": "set <component-pattern> <env>",
1083
807
  "options": [],
1084
- "description": "set an environment for component(s)",
1085
- "extendedDescription": "you can use a `<pattern>` for multiple component ids, such as `bit env set \"org.scope/utils/**\"`. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nto validate the pattern before running this command, run `bit pattern <pattern>`.\n",
1086
- "group": "development"
808
+ "description": "Sets one or more components with a development environment (env)",
809
+ "group": "development",
810
+ "arguments": [
811
+ {
812
+ "name": "component-pattern",
813
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
814
+ },
815
+ {
816
+ "name": "env",
817
+ "description": "the env's component id (include version for non-core envs. e.g, `teambit.community/envs/community-react@1.95.13`)"
818
+ }
819
+ ],
820
+ "examples": [
821
+ {
822
+ "cmd": "set ui/button teambit.react/react",
823
+ "description": "configures 'ui/button' to use the 'teambit.react/react' env"
824
+ },
825
+ {
826
+ "cmd": "set ui/button teambit.community/envs/community-mdx@1.95.16",
827
+ "description": "configures 'ui/button' to use the (non-core) 'teambit.community/envs/community-mdx@1.95.16' env"
828
+ },
829
+ {
830
+ "cmd": "set \"ui/**\" teambit.react/react",
831
+ "description": "configures all components that have the 'ui' namespace to use the teambit.react/react env"
832
+ }
833
+ ]
1087
834
  },
1088
835
  {
1089
- "name": "unset <component>",
836
+ "name": "unset <component-pattern>",
1090
837
  "options": [],
1091
- "description": "unset an environment from component(s)",
1092
- "extendedDescription": "you can use a `<pattern>` for multiple component ids, such as `bit env unset \"org.scope/utils/**\"`. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nto validate the pattern before running this command, run `bit pattern <pattern>`.\n",
1093
- "group": "development"
838
+ "description": "un-sets an env from components that were previously set by \"bit env set\" or by a component template",
839
+ "extendedDescription": "keep in mind that this doesn't remove envs that are set in the variants.\nin only removes envs that appear in the .bitmap file, which were previously configured via \"bit env set\".\nthe purpose of this command is to remove the specific settings and let the the variants in workspace.jsonc to control the env.\nyou can use a `<pattern>` for multiple component ids, such as `bit env unset \"org.scope/utils/**\"`.\nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern.\n",
840
+ "group": "development",
841
+ "arguments": [
842
+ {
843
+ "name": "component-pattern",
844
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components. \nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
845
+ }
846
+ ]
1094
847
  },
1095
848
  {
1096
- "name": "replace <old-env> <new-env>",
849
+ "name": "replace <current-env> <new-env>",
1097
850
  "options": [],
1098
851
  "description": "replace an existing env with another env for all components using the old env",
1099
- "group": "development"
852
+ "group": "development",
853
+ "arguments": [
854
+ {
855
+ "name": "current-env",
856
+ "description": "the component id of the current env"
857
+ },
858
+ {
859
+ "name": "new-env",
860
+ "description": "the component id of the new env"
861
+ }
862
+ ],
863
+ "examples": [
864
+ {
865
+ "cmd": "replace teambit.harmony/aspect teambit.harmony/node",
866
+ "description": "components configured to use the 'aspect' env will be configured to use the 'node' env, instead"
867
+ }
868
+ ]
1100
869
  }
1101
870
  ]
1102
871
  },
872
+ {
873
+ "name": "globals",
874
+ "alias": "",
875
+ "options": [
876
+ [
877
+ "j",
878
+ "json",
879
+ "json format"
880
+ ]
881
+ ],
882
+ "description": "list all globals",
883
+ "extendedDescription": "",
884
+ "group": "workspace",
885
+ "private": false
886
+ },
1103
887
  {
1104
888
  "name": "start [type] [pattern]",
1105
889
  "alias": "c",
@@ -1111,7 +895,7 @@
1111
895
  ],
1112
896
  [
1113
897
  "p",
1114
- "port [number]",
898
+ "port [port-number]",
1115
899
  "port of the UI server."
1116
900
  ],
1117
901
  [
@@ -1122,7 +906,7 @@
1122
906
  [
1123
907
  "v",
1124
908
  "verbose",
1125
- "showing verbose output for inspection and prints stack trace"
909
+ "show verbose output for inspection and prints stack trace"
1126
910
  ],
1127
911
  [
1128
912
  "",
@@ -1135,7 +919,7 @@
1135
919
  "skip the auto-compilation before starting the web-server"
1136
920
  ]
1137
921
  ],
1138
- "description": "Start a dev environment for a workspace or a specific component",
922
+ "description": "run the ui/development server",
1139
923
  "extendedDescription": "",
1140
924
  "group": "development",
1141
925
  "private": false
@@ -1153,29 +937,49 @@
1153
937
  "name": "scope <sub-command>",
1154
938
  "alias": "",
1155
939
  "options": [],
1156
- "description": "EXPERIMENTAL. manage scope-name",
940
+ "description": "EXPERIMENTAL. manage the scope-name for components",
1157
941
  "extendedDescription": "",
1158
942
  "group": "development",
1159
943
  "private": false,
1160
944
  "commands": [
1161
945
  {
1162
- "name": "set <scope-name> [pattern]",
946
+ "name": "set <scope-name> [component-pattern]",
1163
947
  "options": [],
1164
- "description": "set the default-scope",
1165
- "extendedDescription": "set a new scope in the workspace.jsonc.\nif \"pattern\" is provided, the default-scope will be set to the new components matching the criteria.\n\nyou can use a `<pattern>` for multiple component ids, such as `bit scope set scope-name \"org.scope/utils/**\"`. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nto validate the pattern before running this command, run `bit pattern <pattern>`.\n",
1166
- "group": "development"
948
+ "description": "Sets components with a default-scope. If no component is specified, sets the workspace with a default scope",
949
+ "extendedDescription": "default scopes for components are set in the bitmap file. the default scope for a workspace is set in the workspace.jsonc. a 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\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern.\n",
950
+ "group": "development",
951
+ "arguments": [
952
+ {
953
+ "name": "scope-name",
954
+ "description": "the scope name to use as the default scope"
955
+ },
956
+ {
957
+ "name": "component-pattern",
958
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components. \nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
959
+ }
960
+ ]
1167
961
  },
1168
962
  {
1169
- "name": "rename <old-name> <new-name>",
963
+ "name": "rename <current-scope-name> <new-scope-name>",
1170
964
  "options": [
1171
965
  [
1172
966
  "r",
1173
967
  "refactor",
1174
- "change the source code of all components using the original scope-name with the new scope-name"
968
+ "update the import statements in all dependent components to the new package name (that contains the new scope name)"
1175
969
  ]
1176
970
  ],
1177
- "description": "rename a scope for components using the old-name, optionally change the dependencies source-code",
1178
- "group": "development"
971
+ "description": "Renames the scope name for all components with the specified 'current scope name'",
972
+ "group": "development",
973
+ "arguments": [
974
+ {
975
+ "name": "current-scope-name",
976
+ "description": "the scope name to be replaced by another scope name"
977
+ },
978
+ {
979
+ "name": "new-scope-name",
980
+ "description": "a new scope name to replace the current scope name"
981
+ }
982
+ ]
1179
983
  },
1180
984
  {
1181
985
  "name": "fork <original-scope> <new-scope>",
@@ -1225,10 +1029,16 @@
1225
1029
  "install all missing peer dependencies"
1226
1030
  ]
1227
1031
  ],
1228
- "description": "install development workspace dependencies",
1229
- "extendedDescription": "",
1032
+ "description": "installs workspace dependencies",
1033
+ "extendedDescription": "when no package is specified, all workspace dependencies are installed and all workspace components are imported.",
1230
1034
  "group": "development",
1231
- "private": false
1035
+ "private": false,
1036
+ "arguments": [
1037
+ {
1038
+ "name": "packages...",
1039
+ "description": "a list of packages to install (separated by spaces)"
1040
+ }
1041
+ ]
1232
1042
  },
1233
1043
  {
1234
1044
  "name": "update",
@@ -1270,7 +1080,7 @@
1270
1080
  ]
1271
1081
  ],
1272
1082
  "description": "eject components configuration (create a `component.json` file)",
1273
- "extendedDescription": "you can use a `<pattern>` for multiple component ids, such as `bit eject-conf \"org.scope/utils/**\"`. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nto validate the pattern before running this command, run `bit pattern <pattern>`.\n",
1083
+ "extendedDescription": "you can use a `<pattern>` for multiple component ids, such as `bit eject-conf \"org.scope/utils/**\"`.\nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern.\n",
1274
1084
  "group": "development",
1275
1085
  "private": false
1276
1086
  },
@@ -1279,7 +1089,7 @@
1279
1089
  "alias": "",
1280
1090
  "options": [],
1281
1091
  "description": "manage capsules",
1282
- "extendedDescription": "a capsule is a directory contains the component code, isolated from the workspace.\nnormally, capsules are created during the build process, the component files are copied and the packages are installed\nvia the configured package-manager. the purpose is to compile/test them in isolation to make sure they will work for\nother users after publishing/exporting them.",
1092
+ "extendedDescription": "a capsule is a directory containing the component code, isolated from the workspace.\nnormally, capsules are created during the build process, the component files are copied and the packages are installed\nvia the configured package-manager. the purpose is to compile/test them in isolation to make sure they will work for\nother users after publishing/exporting them.",
1283
1093
  "group": "capsules",
1284
1094
  "private": false,
1285
1095
  "commands": [
@@ -1293,13 +1103,13 @@
1293
1103
  "json format"
1294
1104
  ]
1295
1105
  ],
1296
- "description": "list all capsules",
1106
+ "description": "list the capsules generated for this workspace",
1297
1107
  "extendedDescription": "",
1298
1108
  "group": "capsules",
1299
1109
  "private": false
1300
1110
  },
1301
1111
  {
1302
- "name": "create [componentIds...]",
1112
+ "name": "create [component-id...]",
1303
1113
  "alias": "",
1304
1114
  "options": [
1305
1115
  [
@@ -1343,7 +1153,7 @@
1343
1153
  "npm, yarn or pnpm, default to npm"
1344
1154
  ]
1345
1155
  ],
1346
- "description": "create capsules",
1156
+ "description": "create capsules for components",
1347
1157
  "extendedDescription": "",
1348
1158
  "group": "capsules",
1349
1159
  "private": false
@@ -1377,7 +1187,7 @@
1377
1187
  [
1378
1188
  "v",
1379
1189
  "verbose",
1380
- "showing npm verbose output for inspection and prints stack trace"
1190
+ "show npm verbose output for inspection and print the stack trace"
1381
1191
  ],
1382
1192
  [
1383
1193
  "",
@@ -1390,13 +1200,13 @@
1390
1200
  "EXPERIMENTAL. show errors/warnings for types. options are [file, project] to investigate only changed file or entire project. defaults to project"
1391
1201
  ]
1392
1202
  ],
1393
- "description": "watch a set of components",
1203
+ "description": "automatically recompile modified components (on save)",
1394
1204
  "extendedDescription": "",
1395
1205
  "group": "development",
1396
1206
  "private": false
1397
1207
  },
1398
1208
  {
1399
- "name": "link [ids...]",
1209
+ "name": "link [component-names...]",
1400
1210
  "alias": "",
1401
1211
  "options": [
1402
1212
  [
@@ -1425,10 +1235,32 @@
1425
1235
  "skip fetch missing objects from remotes before linking"
1426
1236
  ]
1427
1237
  ],
1428
- "description": "link components and core aspects",
1238
+ "description": "create links in the node_modules directory, to core aspects and to components in the workspace",
1429
1239
  "extendedDescription": "https://bit.dev/docs/workspace/component-links",
1430
1240
  "group": "development",
1431
- "private": false
1241
+ "private": false,
1242
+ "arguments": [
1243
+ {
1244
+ "name": "component-names...",
1245
+ "description": "names or IDs of the components to link"
1246
+ }
1247
+ ]
1248
+ },
1249
+ {
1250
+ "name": "use <component-id>",
1251
+ "alias": "",
1252
+ "options": [],
1253
+ "description": "set aspects in the workspace/scope config to make them loadable by the workspace/scope",
1254
+ "extendedDescription": "",
1255
+ "group": "collaborate",
1256
+ "private": false,
1257
+ "remoteOp": true,
1258
+ "arguments": [
1259
+ {
1260
+ "name": "component-id",
1261
+ "description": "the component ID of the aspect"
1262
+ }
1263
+ ]
1432
1264
  },
1433
1265
  {
1434
1266
  "name": "pattern <pattern>",
@@ -1441,48 +1273,70 @@
1441
1273
  ]
1442
1274
  ],
1443
1275
  "description": "list the component ids matching the given pattern",
1444
- "extendedDescription": "",
1276
+ "extendedDescription": "this command helps validating a pattern before using it in other commands.\na pattern can be a simple component-id or component-name. e.g. \"ui/button\".\na pattern can be used with wildcards for multiple component ids, e.g. \"org.scope/utils/**\".\nto enter multiple patterns, separate them by a comma, e.g. \"ui/*, lib/*\"\nto exclude, use \"!\". e.g. \"ui/**, !ui/button\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nthe matching algorithm is done by multimatch (@see https://github.com/sindresorhus/multimatch)\n",
1445
1277
  "group": "development",
1446
- "private": false
1278
+ "private": false,
1279
+ "examples": [
1280
+ {
1281
+ "cmd": "bit pattern \"**\"",
1282
+ "description": "matches all components"
1283
+ },
1284
+ {
1285
+ "cmd": "bit pattern \"*/ui/*\"",
1286
+ "description": "matches components with any scope-name and the \"ui\" namespace. e.g. \"ui/button\" but not \"ui/elements/button\""
1287
+ },
1288
+ {
1289
+ "cmd": "bit pattern \"*/ui/**\"",
1290
+ "description": "matches components that their namespace starts with \"ui/\" e.g. \"ui/button\", \"ui/elements/button\""
1291
+ },
1292
+ {
1293
+ "cmd": "bit pattern \"bar, foo\"",
1294
+ "description": "matches two components: bar and foo"
1295
+ },
1296
+ {
1297
+ "cmd": "bit pattern \"my-scope.org/**\"",
1298
+ "description": "matches all components of the scope \"my-scope.org\""
1299
+ }
1300
+ ]
1447
1301
  },
1448
1302
  {
1449
- "name": "import [ids...]",
1450
- "alias": "",
1303
+ "name": "checkout [values...]",
1304
+ "alias": "U",
1451
1305
  "options": [
1452
1306
  [
1453
- "p",
1454
- "path <path>",
1455
- "import components into a specific directory"
1307
+ "i",
1308
+ "interactive-merge",
1309
+ "when a component is modified and the merge process found conflicts, display options to resolve them"
1456
1310
  ],
1457
1311
  [
1458
1312
  "o",
1459
- "objects",
1460
- "import components objects only, don't write the components to the file system. This is a default behavior for import with no id"
1313
+ "ours",
1314
+ "in case of a conflict, override the used version with the current modification"
1461
1315
  ],
1462
1316
  [
1463
- "d",
1464
- "display-dependencies",
1465
- "display the imported dependencies"
1317
+ "t",
1318
+ "theirs",
1319
+ "in case of a conflict, override the current modification with the specified version"
1466
1320
  ],
1467
1321
  [
1468
- "O",
1469
- "override",
1470
- "override local changes"
1322
+ "m",
1323
+ "manual",
1324
+ "in case of a conflict, leave the files with a conflict state to resolve them manually later"
1471
1325
  ],
1472
1326
  [
1473
- "v",
1474
- "verbose",
1475
- "showing verbose output for inspection"
1327
+ "r",
1328
+ "reset",
1329
+ "revert changes that were not snapped/tagged"
1476
1330
  ],
1477
1331
  [
1478
- "j",
1479
- "json",
1480
- "return the output as JSON"
1332
+ "a",
1333
+ "all",
1334
+ "all components"
1481
1335
  ],
1482
1336
  [
1483
- "",
1484
- "conf",
1485
- "write the configuration file (component.json) of the component (harmony components only)"
1337
+ "v",
1338
+ "verbose",
1339
+ "showing verbose output for inspection"
1486
1340
  ],
1487
1341
  [
1488
1342
  "",
@@ -1495,365 +1349,177 @@
1495
1349
  "do not install packages of the imported components"
1496
1350
  ],
1497
1351
  [
1498
- "m",
1499
- "merge [strategy]",
1500
- "merge local changes with the imported version. strategy should be \"theirs\", \"ours\" or \"manual\""
1352
+ "",
1353
+ "ignore-package-json",
1354
+ "do not generate package.json for the imported component(s). (it automatically enables skip-npm-install and save-dependencies-as-components flags)"
1501
1355
  ],
1502
1356
  [
1503
1357
  "",
1504
- "dependencies",
1505
- "EXPERIMENTAL. import all dependencies and write them to the workspace"
1358
+ "conf [path]",
1359
+ "write the configuration file (bit.json) and the envs configuration files (use --conf without path to write to the default dir)"
1506
1360
  ],
1507
1361
  [
1508
1362
  "",
1509
- "dependents",
1510
- "EXPERIMENTAL. import component dependents to allow auto-tag updating them upon tag"
1511
- ],
1363
+ "ignore-dist",
1364
+ "do not write dist files (when exist)"
1365
+ ]
1366
+ ],
1367
+ "description": "switch between component versions or remove local changes",
1368
+ "extendedDescription": "\n `bit checkout <version> [ids...]` => checkout the specified ids (or all components when --all is used) to the specified version\n `bit checkout head` => checkout all components to their latest versions\n `bit checkout head [ids...]` => checkout the specified ids to their latest versions\n `bit checkout [ids...] --reset` => remove local modifications from the specified ids (or all components when --all is used)\n you can use a pattern for multiple ids, such as bit checkout 0.0.1 \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
1369
+ "group": "development",
1370
+ "private": false
1371
+ },
1372
+ {
1373
+ "name": "remove <component-pattern>",
1374
+ "alias": "rm",
1375
+ "options": [
1512
1376
  [
1513
1377
  "",
1514
- "skip-lane",
1515
- "EXPERIMENTAL. when checked out to a lane, do not import the component into the lane, save it on main"
1378
+ "soft",
1379
+ "EXPERIMENTAL. mark the component as deleted. after tag/snap and export the remote will be updated"
1380
+ ],
1381
+ [
1382
+ "r",
1383
+ "remote",
1384
+ "remove a component completely from a remote scope (Careful! this is a permanent change. prefer --soft and tag+export)"
1385
+ ],
1386
+ [
1387
+ "t",
1388
+ "track",
1389
+ "keep tracking component in .bitmap (default = false), helps transform a tagged-component to new"
1390
+ ],
1391
+ [
1392
+ "d",
1393
+ "delete-files",
1394
+ "DEPRECATED (this is now the default). delete local component files"
1516
1395
  ],
1517
1396
  [
1518
1397
  "",
1519
- "all-history",
1520
- "relevant for fetching all components objects. avoid optimizations, fetch all history versions, always"
1398
+ "keep-files",
1399
+ "keep component files (just untrack the component)"
1400
+ ],
1401
+ [
1402
+ "f",
1403
+ "force",
1404
+ "removes the component from the scope, even if used as a dependency. WARNING: components that depend on this component will corrupt"
1405
+ ],
1406
+ [
1407
+ "s",
1408
+ "silent",
1409
+ "skip confirmation"
1521
1410
  ]
1522
1411
  ],
1523
- "description": "import components into your workspace",
1524
- "extendedDescription": "https://bit.dev/docs/components/importing-components\nyou can use a pattern for multiple ids, such as bit import \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
1412
+ "description": "remove component(s) from the workspace, or a remote scope",
1413
+ "extendedDescription": "",
1525
1414
  "group": "collaborate",
1526
1415
  "private": false,
1527
- "remoteOp": true
1416
+ "remoteOp": true,
1417
+ "skipWorkspace": true,
1418
+ "arguments": [
1419
+ {
1420
+ "name": "component-pattern",
1421
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
1422
+ }
1423
+ ]
1528
1424
  },
1529
1425
  {
1530
- "name": "create <templateName> <componentNames...>",
1426
+ "name": "insights [names...]",
1531
1427
  "alias": "",
1532
1428
  "options": [
1533
1429
  [
1534
- "n",
1535
- "namespace <string>",
1536
- "sets the component's namespace and nested dirs inside the scope"
1537
- ],
1538
- [
1539
- "s",
1540
- "scope <string>",
1541
- "sets the component's scope-name. if not entered, the default-scope will be used"
1542
- ],
1543
- [
1544
- "a",
1545
- "aspect <string>",
1546
- "aspect-id of the template. helpful when multiple aspects use the same template name"
1547
- ],
1548
- [
1549
- "p",
1550
- "path <string>",
1551
- "relative path in the workspace. by default the path is `<scope>/<namespace>/<name>`"
1430
+ "l",
1431
+ "list",
1432
+ "list all insights"
1552
1433
  ],
1553
1434
  [
1554
- "e",
1555
- "env <string>",
1556
- "set the component's environment. (overrides the env from variants and the template)"
1435
+ "j",
1436
+ "json",
1437
+ "return the insights in json format"
1557
1438
  ]
1558
1439
  ],
1559
- "description": "create a new component from a template",
1440
+ "description": "Insights on component graph",
1560
1441
  "extendedDescription": "",
1561
1442
  "group": "development",
1562
- "private": false
1443
+ "private": true
1563
1444
  },
1564
1445
  {
1565
- "name": "templates",
1446
+ "name": "component-issues",
1566
1447
  "alias": "",
1567
1448
  "options": [
1568
1449
  [
1569
- "s",
1570
- "show-all",
1571
- "show hidden templates"
1450
+ "j",
1451
+ "json",
1452
+ "json format"
1572
1453
  ]
1573
1454
  ],
1574
- "description": "list templates for \"bit create\" and \"bit new\"",
1575
- "extendedDescription": "list components templates when inside bit-workspace (for bit-create), otherwise, list workspace templates (for bit-new)",
1455
+ "description": "list available component-issues",
1456
+ "extendedDescription": "",
1576
1457
  "group": "development",
1577
1458
  "private": false
1578
1459
  },
1579
1460
  {
1580
- "name": "new <templateName> <workspaceName>",
1581
- "alias": "",
1461
+ "name": "tag [component-patterns...]",
1462
+ "alias": "t",
1582
1463
  "options": [
1583
1464
  [
1584
- "a",
1585
- "aspect <string>",
1586
- "aspect-id of the template. mandatory for non-core aspects. helpful for core aspects in case of a name collision"
1465
+ "m",
1466
+ "message <message>",
1467
+ "a log message describing latest changes"
1587
1468
  ],
1588
1469
  [
1589
- "d",
1590
- "default-scope <string>",
1591
- "set defaultScope in the new workspace.jsonc"
1470
+ "",
1471
+ "unmodified",
1472
+ "include unmodified components (by default, only new and modified components are tagged)"
1592
1473
  ],
1593
1474
  [
1594
1475
  "",
1595
- "standalone",
1596
- "DEPRECATED. use --skip-git instead"
1476
+ "editor [editor]",
1477
+ "EXPERIMENTAL. open an editor to write a tag message for each component. optionally, specify the editor-name (defaults to vim)."
1597
1478
  ],
1598
1479
  [
1599
- "s",
1600
- "skip-git",
1601
- "skip generation of Git repository"
1480
+ "v",
1481
+ "ver <version>",
1482
+ "tag with the given version"
1602
1483
  ],
1603
1484
  [
1604
- "e",
1605
- "empty",
1606
- "empty workspace with no components (relevant for templates that add components by default)"
1485
+ "l",
1486
+ "increment <level>",
1487
+ "options are: [major, premajor, minor, preminor, patch, prepatch, prerelease], default to patch"
1607
1488
  ],
1608
1489
  [
1609
1490
  "",
1610
- "load-from <string>",
1611
- "path to the workspace containing the template. helpful during a development of a workspace-template"
1612
- ]
1613
- ],
1614
- "description": "Create a new workspace from a template",
1615
- "extendedDescription": "",
1616
- "group": "start",
1617
- "private": false
1618
- },
1619
- {
1620
- "name": "build [pattern]",
1621
- "alias": "",
1622
- "options": [
1623
- [
1624
- "a",
1625
- "all",
1626
- "build all components, not only modified and new"
1627
- ],
1628
- [
1629
- "d",
1630
- "dev",
1631
- "run the pipeline in dev mode"
1632
- ],
1633
- [
1634
- "",
1635
- "install",
1636
- "install core aspects in capsules"
1637
- ],
1638
- [
1639
- "",
1640
- "reuse-capsules",
1641
- "avoid deleting the capsules root-dir before starting the build"
1642
- ],
1643
- [
1644
- "",
1645
- "tasks <string>",
1646
- "build the specified task(s) only. for multiple tasks, separate by a comma and wrap with quotes.\nspecify the task-name (e.g. \"TypescriptCompiler\") or the task-aspect-id (e.g. teambit.compilation/compiler)"
1647
- ],
1648
- [
1649
- "",
1650
- "cache-packages-on-capsule-root",
1651
- "set the package-manager cache on the capsule root"
1652
- ],
1653
- [
1654
- "",
1655
- "list-tasks <string>",
1656
- "list tasks of an env or a component-id for each one of the pipelines: build, tag and snap"
1657
- ]
1658
- ],
1659
- "description": "run set of tasks for build",
1660
- "extendedDescription": "",
1661
- "group": "development",
1662
- "private": false
1663
- },
1664
- {
1665
- "name": "artifacts <pattern...>",
1666
- "alias": "",
1667
- "options": [
1668
- [
1669
- "",
1670
- "aspect <aspect-id>",
1671
- "show/download only artifacts generated by this aspect-id"
1672
- ],
1673
- [
1674
- "",
1675
- "task <task-id>",
1676
- "show/download only artifacts generated by this task-id"
1677
- ],
1678
- [
1679
- "",
1680
- "files <glob>",
1681
- "show/download only artifacts matching the given files or the glob pattern (wrap glob patterns in quotes)"
1682
- ],
1683
- [
1684
- "",
1685
- "out-dir <string>",
1686
- "download the files to the specified dir"
1687
- ]
1688
- ],
1689
- "description": "EXPERIMENTAL. list and download components artifacts",
1690
- "extendedDescription": "artifacts are created on isolated capsules during tag or snap commands.\nexample of artifacts are dists files generated by a compiler, a JUnit.xml file generated by a tester\nand a package.tgz file generated by pkg aspect.\n",
1691
- "group": "development",
1692
- "private": false
1693
- },
1694
- {
1695
- "name": "pack <componentId> [scopePath]",
1696
- "alias": "",
1697
- "options": [
1698
- [
1699
- "d",
1700
- "out-dir <out-dir>",
1701
- "directory to put the result tar file"
1702
- ],
1703
- [
1704
- "o",
1705
- "override",
1706
- "override existing pack file"
1707
- ],
1708
- [
1709
- "k",
1710
- "keep",
1711
- "should keep isolated environment [default = false]"
1712
- ],
1713
- [
1714
- "p",
1715
- "prefix",
1716
- "keep custom (binding) prefix"
1717
- ],
1718
- [
1719
- "j",
1720
- "json",
1721
- "return the output as JSON"
1722
- ]
1723
- ],
1724
- "description": "create tar for npm publish",
1725
- "extendedDescription": "",
1726
- "group": "collaborate",
1727
- "private": false
1728
- },
1729
- {
1730
- "name": "publish <componentId>",
1731
- "alias": "",
1732
- "options": [
1733
- [
1734
- "d",
1735
- "dry-run",
1736
- "npm publish --dry-run"
1737
- ],
1738
- [
1739
- "",
1740
- "allow-staged",
1741
- "allow publish components that were not exported yet (not recommended)"
1742
- ],
1743
- [
1744
- "j",
1745
- "json",
1746
- "return the output as JSON"
1747
- ]
1748
- ],
1749
- "description": "publish components to npm (npm publish)",
1750
- "extendedDescription": "",
1751
- "group": "collaborate",
1752
- "private": true
1753
- },
1754
- {
1755
- "name": "refactor <sub-command>",
1756
- "alias": "",
1757
- "options": [],
1758
- "description": "EXPERIMENTAL. source code refactoring / codemod",
1759
- "extendedDescription": "",
1760
- "group": "development",
1761
- "private": false,
1762
- "commands": [
1763
- {
1764
- "name": "dependency-name <old-id> <new-id>",
1765
- "alias": "",
1766
- "options": [],
1767
- "description": "replace the dependency's old package-name with a new one in the code",
1768
- "extendedDescription": "the `<old-id>` and `<new-id>` arguments can be either a component-id or a package-name.",
1769
- "group": "development",
1770
- "private": false
1771
- }
1772
- ]
1773
- },
1774
- {
1775
- "name": "component-issues",
1776
- "alias": "",
1777
- "options": [
1778
- [
1779
- "j",
1780
- "json",
1781
- "json format"
1782
- ]
1783
- ],
1784
- "description": "list available component-issues",
1785
- "extendedDescription": "",
1786
- "group": "development",
1787
- "private": false
1788
- },
1789
- {
1790
- "name": "insights [names...]",
1791
- "alias": "",
1792
- "options": [
1793
- [
1794
- "l",
1795
- "list",
1796
- "list all insights"
1797
- ],
1798
- [
1799
- "j",
1800
- "json",
1801
- "return the insights in json format"
1802
- ]
1803
- ],
1804
- "description": "Insights on component graph",
1805
- "extendedDescription": "",
1806
- "group": "development",
1807
- "private": true
1808
- },
1809
- {
1810
- "name": "tag [id...]",
1811
- "alias": "t",
1812
- "options": [
1813
- [
1814
- "m",
1815
- "message <message>",
1816
- "log message describing the user changes"
1817
- ],
1818
- [
1819
- "",
1820
- "unmodified",
1821
- "include unmodified components (by default, only new and modified components are tagged)"
1822
- ],
1823
- [
1824
- "",
1825
- "editor [editor]",
1826
- "EXPERIMENTAL. open an editor to edit the tag messages per component, optionally specify the editor-name, default to vim"
1827
- ],
1828
- [
1829
- "v",
1830
- "ver <version>",
1831
- "tag with the given version"
1491
+ "prerelease-id <id>",
1492
+ "prerelease identifier (e.g. \"dev\" to get \"1.0.0-dev.1\")"
1832
1493
  ],
1833
1494
  [
1834
1495
  "p",
1835
1496
  "patch",
1836
- "increment the patch version number"
1497
+ "syntactic sugar for \"--increment patch\""
1837
1498
  ],
1838
1499
  [
1839
1500
  "",
1840
1501
  "minor",
1841
- "increment the minor version number"
1502
+ "syntactic sugar for \"--increment minor\""
1842
1503
  ],
1843
1504
  [
1844
1505
  "",
1845
1506
  "major",
1846
- "increment the major version number"
1507
+ "syntactic sugar for \"--increment major\""
1508
+ ],
1509
+ [
1510
+ "",
1511
+ "pre-release [identifier]",
1512
+ "syntactic sugar for \"--increment prerelease\" and `--prerelease-id <identifier>`"
1847
1513
  ],
1848
1514
  [
1849
1515
  "",
1850
1516
  "snapped",
1851
- "tag components that their head is a snap (not a tag)"
1517
+ "EXPERIMENTAL. tag components that their head is a snap (not a tag)"
1852
1518
  ],
1853
1519
  [
1854
1520
  "",
1855
- "pre-release [identifier]",
1856
- "EXPERIMENTAL. increment a pre-release version (e.g. 1.0.0-dev.1)"
1521
+ "unmerged",
1522
+ "EXPERIMENTAL. complete a merge process by tagging the unmerged components"
1857
1523
  ],
1858
1524
  [
1859
1525
  "",
@@ -1893,7 +1559,7 @@
1893
1559
  [
1894
1560
  "i",
1895
1561
  "ignore-issues [issues]",
1896
- "ignore component issues (shown in \"bit status\" as \"issues found\"), issues to ignore:\n[MissingPackagesDependenciesOnFs, MissingComponents, UntrackedDependencies, ResolveErrors, RelativeComponents, RelativeComponentsAuthored, ParseErrors, MissingLinks, MissingDists, LegacyInsideHarmony, MissingDependenciesOnFs, MissingCustomModuleResolutionLinks, ImportNonMainFiles, CustomModuleResolutionUsed, MultipleEnvs, MissingLinksFromNodeModulesToSrc, CircularDependencies]\nto ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify \"*\"."
1562
+ "ignore component issues (shown in \"bit status\" as \"issues found\"), issues to ignore:\n[MissingPackagesDependenciesOnFs, MissingComponents, UntrackedDependencies, ResolveErrors, RelativeComponents, RelativeComponentsAuthored, ParseErrors, MissingDists, LegacyInsideHarmony, MissingDependenciesOnFs, ImportNonMainFiles, CustomModuleResolutionUsed, MultipleEnvs, MissingLinksFromNodeModulesToSrc, CircularDependencies]\nto ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify \"*\"."
1897
1563
  ],
1898
1564
  [
1899
1565
  "I",
@@ -1926,26 +1592,43 @@
1926
1592
  "DEPRECATED. use --disable-tag-pipeline instead"
1927
1593
  ]
1928
1594
  ],
1929
- "description": "record component changes and lock versions",
1930
- "extendedDescription": "if no ids are provided, it will tag all new and modified components.\nif component ids are entered, you can specify a version per id using \"@\" sign, e.g. bit tag foo@1.0.0 bar@minor baz@major\nhttps://bit.dev/components/tags\nyou can use a pattern for multiple ids, such as bit tag \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
1595
+ "description": "create an immutable and exportable component snapshot, tagged with a release version.",
1596
+ "extendedDescription": "if no patterns are provided, it will tag all new and modified components.\nif patterns are entered, you can specify a version per pattern using \"@\" sign, e.g. bit tag foo@1.0.0 bar@minor baz@major",
1931
1597
  "group": "development",
1932
1598
  "private": false,
1933
- "remoteOp": true
1599
+ "remoteOp": true,
1600
+ "arguments": [
1601
+ {
1602
+ "name": "component-patterns...",
1603
+ "description": "a list of component names, IDs or patterns (separated by space). run \"bit pattern --help\" to get more data about patterns. By default, all modified are tagged."
1604
+ }
1605
+ ],
1606
+ "examples": [
1607
+ {
1608
+ "cmd": "tag --ver 1.0.0",
1609
+ "description": "tag all components to version 1.0.0"
1610
+ }
1611
+ ]
1934
1612
  },
1935
1613
  {
1936
- "name": "snap [id]",
1614
+ "name": "snap [component-pattern]",
1937
1615
  "alias": "",
1938
1616
  "options": [
1939
1617
  [
1940
1618
  "m",
1941
1619
  "message <message>",
1942
- "log message describing the user changes"
1620
+ "log message describing the latest changes"
1943
1621
  ],
1944
1622
  [
1945
1623
  "",
1946
1624
  "unmodified",
1947
1625
  "include unmodified components (by default, only new and modified components are snapped)"
1948
1626
  ],
1627
+ [
1628
+ "",
1629
+ "unmerged",
1630
+ "EXPERIMENTAL. complete a merge process by snapping the unmerged components"
1631
+ ],
1949
1632
  [
1950
1633
  "",
1951
1634
  "build",
@@ -1974,7 +1657,7 @@
1974
1657
  [
1975
1658
  "i",
1976
1659
  "ignore-issues [issues]",
1977
- "ignore component issues (shown in \"bit status\" as \"issues found\"), issues to ignore:\n[MissingPackagesDependenciesOnFs, MissingComponents, UntrackedDependencies, ResolveErrors, RelativeComponents, RelativeComponentsAuthored, ParseErrors, MissingLinks, MissingDists, LegacyInsideHarmony, MissingDependenciesOnFs, MissingCustomModuleResolutionLinks, ImportNonMainFiles, CustomModuleResolutionUsed, MultipleEnvs, MissingLinksFromNodeModulesToSrc, CircularDependencies]\nto ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify \"*\"."
1660
+ "ignore component issues (shown in \"bit status\" as \"issues found\"), issues to ignore:\n[MissingPackagesDependenciesOnFs, MissingComponents, UntrackedDependencies, ResolveErrors, RelativeComponents, RelativeComponentsAuthored, ParseErrors, MissingDists, LegacyInsideHarmony, MissingDependenciesOnFs, ImportNonMainFiles, CustomModuleResolutionUsed, MultipleEnvs, MissingLinksFromNodeModulesToSrc, CircularDependencies]\nto ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify \"*\"."
1978
1661
  ],
1979
1662
  [
1980
1663
  "a",
@@ -1987,10 +1670,56 @@
1987
1670
  "DEPRECATED (use \"--skip-tests\" or \"--unmodified\" instead). force-snap even if tests are failing and even when component has not changed"
1988
1671
  ]
1989
1672
  ],
1990
- "description": "record component changes.\nhttps://bit.dev/components/snaps\nyou can use a pattern for multiple ids, such as bit snap \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
1991
- "extendedDescription": "",
1673
+ "description": "EXPERIMENTAL. create an immutable and exportable component snapshot (no release version)",
1674
+ "extendedDescription": "https://bit.dev/components/snaps\nyou can use a pattern for multiple ids, such as bit snap \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
1992
1675
  "group": "ungrouped",
1993
- "private": true
1676
+ "private": true,
1677
+ "arguments": [
1678
+ {
1679
+ "name": "component-pattern",
1680
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes. By default, all new and modified components are snapped."
1681
+ }
1682
+ ]
1683
+ },
1684
+ {
1685
+ "name": "reset [component-pattern]",
1686
+ "alias": "",
1687
+ "options": [
1688
+ [
1689
+ "a",
1690
+ "all",
1691
+ "revert tag/snap for all tagged/snapped components"
1692
+ ],
1693
+ [
1694
+ "",
1695
+ "head",
1696
+ "revert the head tag/snap only (by default, all local tags/snaps are reverted)"
1697
+ ],
1698
+ [
1699
+ "",
1700
+ "soft",
1701
+ "revert only soft-tags (components tagged with --soft flag)"
1702
+ ],
1703
+ [
1704
+ "f",
1705
+ "force",
1706
+ "revert the tag even if used as a dependency. WARNING: components that depend on this tag will corrupt"
1707
+ ]
1708
+ ],
1709
+ "description": "revert tagged or snapped versions for component(s)",
1710
+ "extendedDescription": "https://bit.dev/docs/components/tags#undoing-a-tag",
1711
+ "group": "development",
1712
+ "private": false,
1713
+ "arguments": [
1714
+ {
1715
+ "name": "component-pattern",
1716
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
1717
+ },
1718
+ {
1719
+ "name": "component-version",
1720
+ "description": "the version to untag (semver for tags. hash for snaps)"
1721
+ }
1722
+ ]
1994
1723
  },
1995
1724
  {
1996
1725
  "name": "merge [values...]",
@@ -2031,474 +1760,152 @@
2031
1760
  "build",
2032
1761
  "in case of snap during the merge, run the build-pipeline (similar to bit snap --build)"
2033
1762
  ],
2034
- [
2035
- "m",
2036
- "message <message>",
2037
- "EXPERIMENTAL. override the default message for the auto snap"
2038
- ]
2039
- ],
2040
- "description": "merge changes of different component versions",
2041
- "extendedDescription": "merge changes of different component versions\n `bit merge <version> [ids...]` => merge changes of the given version into the checked out version\n `bit merge [ids...]` => EXPERIMENTAL. merge changes of the remote head into local, optionally use '--abort' or '--resolve'\n you can use a pattern for multiple ids, such as bit merge 0.0.1 \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
2042
- "group": "development",
2043
- "private": false
2044
- },
2045
- {
2046
- "name": "status",
2047
- "alias": "s",
2048
- "options": [
2049
- [
2050
- "j",
2051
- "json",
2052
- "return a json version of the component"
2053
- ],
2054
1763
  [
2055
1764
  "",
2056
- "strict",
2057
- "in case issues found, exit with code 1"
2058
- ]
2059
- ],
2060
- "description": "show the working area component(s) status",
2061
- "extendedDescription": "https://bit.dev/docs/workspace/workspace-status",
2062
- "group": "development",
2063
- "private": false
2064
- },
2065
- {
2066
- "name": "compile [component...]",
2067
- "alias": "",
2068
- "options": [
2069
- [
2070
- "c",
2071
- "changed",
2072
- "compile only new and modified components"
2073
- ],
2074
- [
2075
- "v",
2076
1765
  "verbose",
2077
- "show more data, such as, dist paths"
1766
+ "show details of components that were not merged legitimately"
2078
1767
  ],
2079
1768
  [
2080
- "j",
2081
- "json",
2082
- "return the compile results in json format"
1769
+ "",
1770
+ "skip-dependency-installation",
1771
+ "do not install packages of the imported components"
2083
1772
  ],
2084
1773
  [
2085
- "d",
2086
- "delete-dist-dir",
2087
- "delete existing dist folder before writing new compiled files"
1774
+ "m",
1775
+ "message <message>",
1776
+ "EXPERIMENTAL. override the default message for the auto snap"
2088
1777
  ]
2089
1778
  ],
2090
- "description": "compile components in the development workspace",
2091
- "extendedDescription": "",
1779
+ "description": "merge changes of different component versions",
1780
+ "extendedDescription": "merge changes of different component versions\n `bit merge <version> [ids...]` => merge changes of the given version into the checked out version\n `bit merge [ids...]` => EXPERIMENTAL. merge changes of the remote head into local, optionally use '--abort' or '--resolve'\n you can use a pattern for multiple ids, such as bit merge 0.0.1 \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
2092
1781
  "group": "development",
2093
1782
  "private": false
2094
1783
  },
2095
1784
  {
2096
- "name": "run <app>",
2097
- "alias": "c",
1785
+ "name": "lane [lane-name]",
1786
+ "alias": "",
2098
1787
  "options": [
2099
1788
  [
2100
1789
  "d",
2101
- "dev",
2102
- "start the application in dev mode."
2103
- ],
2104
- [
2105
- "v",
2106
- "verbose",
2107
- "showing verbose output for inspection and prints stack trace"
1790
+ "details",
1791
+ "show more details on the state of each component in each lane"
2108
1792
  ],
2109
- [
2110
- "",
2111
- "skip-watch",
2112
- "avoid running the watch process that compiles components in the background"
2113
- ]
2114
- ],
2115
- "description": "run an application",
2116
- "extendedDescription": "",
2117
- "group": "apps",
2118
- "private": false
2119
- },
2120
- {
2121
- "name": "app-list",
2122
- "alias": "",
2123
- "options": [
2124
1793
  [
2125
1794
  "j",
2126
1795
  "json",
2127
- "return the component data in json format"
2128
- ]
2129
- ],
2130
- "description": "DEPRECATED. use \"bit app list\"",
2131
- "extendedDescription": "",
2132
- "group": "apps",
2133
- "private": true
2134
- },
2135
- {
2136
- "name": "app <sub-command>",
2137
- "alias": "",
2138
- "options": [],
2139
- "description": "manage applications",
2140
- "extendedDescription": "",
2141
- "group": "apps",
2142
- "private": false,
2143
- "commands": [
2144
- {
2145
- "name": "list",
2146
- "alias": "",
2147
- "options": [
2148
- [
2149
- "j",
2150
- "json",
2151
- "return the component data in json format"
2152
- ]
2153
- ],
2154
- "description": "list all registered applications",
2155
- "extendedDescription": "",
2156
- "group": "apps",
2157
- "private": false
2158
- }
2159
- ]
2160
- },
2161
- {
2162
- "name": "test [pattern]",
2163
- "alias": "at",
2164
- "options": [
2165
- [
2166
- "w",
2167
- "watch",
2168
- "start the tester in watch mode."
2169
- ],
2170
- [
2171
- "d",
2172
- "debug",
2173
- "start the tester in debug mode."
2174
- ],
2175
- [
2176
- "a",
2177
- "all",
2178
- "test all components, not only new and modified"
1796
+ "show lanes details in json format"
2179
1797
  ],
2180
1798
  [
2181
- "",
2182
- "junit <filepath>",
2183
- "write tests results as JUnit XML format into the specified file path"
1799
+ "r",
1800
+ "remote <string>",
1801
+ "show remote lanes"
2184
1802
  ],
2185
1803
  [
2186
1804
  "",
2187
- "coverage",
2188
- "show code coverage data"
2189
- ],
2190
- [
2191
- "e",
2192
- "env <id>",
2193
- "test only the given env"
2194
- ],
2195
- [
2196
- "s",
2197
- "scope <scope>",
2198
- "name of the scope to test"
2199
- ]
2200
- ],
2201
- "description": "test set of components in your workspace",
2202
- "extendedDescription": "",
2203
- "group": "development",
2204
- "private": false
2205
- },
2206
- {
2207
- "name": "schema <pattern>",
2208
- "alias": "",
2209
- "options": [
2210
- [
2211
- "j",
2212
- "json",
2213
- "return the component data in json format"
2214
- ]
2215
- ],
2216
- "description": "shows the API schema of a certain component.",
2217
- "extendedDescription": "you can use a `<pattern>` for multiple component ids, such as `bit schema \"org.scope/utils/**\"`. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nto validate the pattern before running this command, run `bit pattern <pattern>`.\n",
2218
- "group": "development",
2219
- "private": false
2220
- },
2221
- {
2222
- "name": "check-types [pattern]",
2223
- "alias": "",
2224
- "options": [
2225
- [
2226
- "a",
2227
- "all",
2228
- "check-types for all components, not only modified and new"
1805
+ "merged",
1806
+ "show merged lanes"
2229
1807
  ],
2230
1808
  [
2231
1809
  "",
2232
- "strict",
2233
- "in case issues found, exit with code 1"
1810
+ "not-merged",
1811
+ "show not merged lanes"
2234
1812
  ]
2235
1813
  ],
2236
- "description": "check typescript types",
2237
- "extendedDescription": "",
2238
- "group": "development",
2239
- "private": false
2240
- },
2241
- {
2242
- "name": "aspect <sub-command>",
2243
- "alias": "",
2244
- "options": [],
2245
- "description": "EXPERIMENTAL. manage aspects",
1814
+ "description": "show lanes details\nhttps://bit.dev/docs/components/lanes",
2246
1815
  "extendedDescription": "",
2247
- "group": "development",
2248
- "private": false,
1816
+ "group": "ungrouped",
1817
+ "private": true,
1818
+ "remoteOp": true,
1819
+ "skipWorkspace": true,
2249
1820
  "commands": [
2250
1821
  {
2251
- "name": "list [pattern]",
1822
+ "name": "list",
2252
1823
  "alias": "",
2253
1824
  "options": [
2254
1825
  [
2255
1826
  "d",
2256
- "debug",
2257
- "show the origins were the aspects were taken from"
1827
+ "details",
1828
+ "show more details on the state of each component in each lane"
1829
+ ],
1830
+ [
1831
+ "j",
1832
+ "json",
1833
+ "show lanes details in a json format"
1834
+ ],
1835
+ [
1836
+ "r",
1837
+ "remote <remote-scope-name>",
1838
+ "show remote lanes"
1839
+ ],
1840
+ [
1841
+ "",
1842
+ "merged",
1843
+ "show merged lanes"
1844
+ ],
1845
+ [
1846
+ "",
1847
+ "not-merged",
1848
+ "show lanes that are not merged"
2258
1849
  ]
2259
1850
  ],
2260
- "description": "list all aspects configured on component(s)",
2261
- "extendedDescription": "you can use a `<pattern>` for multiple component ids, such as `bit aspect list \"org.scope/utils/**\"`. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nto validate the pattern before running this command, run `bit pattern <pattern>`.\n",
2262
- "group": "development",
2263
- "private": false
1851
+ "description": "list lanes",
1852
+ "extendedDescription": "",
1853
+ "group": "ungrouped",
1854
+ "private": true,
1855
+ "remoteOp": true,
1856
+ "skipWorkspace": true
2264
1857
  },
2265
1858
  {
2266
- "name": "get <component-id>",
1859
+ "name": "switch <lane>",
2267
1860
  "alias": "",
2268
1861
  "options": [
2269
1862
  [
2270
- "d",
2271
- "debug",
2272
- "show the origins were the aspects were taken from"
1863
+ "n",
1864
+ "alias <string>",
1865
+ "relevant when the specified lane is a remote late. name a local lane differently than the remote lane"
1866
+ ],
1867
+ [
1868
+ "m",
1869
+ "merge [strategy]",
1870
+ "merge local changes with the checked out version. strategy should be \"theirs\", \"ours\" or \"manual\""
1871
+ ],
1872
+ [
1873
+ "a",
1874
+ "get-all",
1875
+ "checkout all components in a lane include ones that do not exist in the workspace"
1876
+ ],
1877
+ [
1878
+ "",
1879
+ "skip-dependency-installation",
1880
+ "do not install packages of the imported components"
2273
1881
  ],
2274
1882
  [
2275
1883
  "j",
2276
1884
  "json",
2277
- "format as json"
1885
+ "return the output as JSON"
2278
1886
  ]
2279
1887
  ],
2280
- "description": "show aspects' data and configuration of the given component",
1888
+ "description": "switch to the specified lane",
2281
1889
  "extendedDescription": "",
2282
- "group": "development",
2283
- "private": false
1890
+ "group": "ungrouped",
1891
+ "private": true
2284
1892
  },
2285
1893
  {
2286
- "name": "set <pattern> <aspect-id> [config]",
2287
- "alias": "",
2288
- "options": [],
2289
- "description": "set an aspect to component(s) with optional config.",
2290
- "extendedDescription": "enter the config as stringified JSON (e.g. '{\"foo\":\"bar\"}' ).\nif no config entered, the aspect will be set with empty config ({}).\nyou can use a `<pattern>` for multiple component ids, such as `bit aspect set \"org.scope/utils/**\"`. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nto validate the pattern before running this command, run `bit pattern <pattern>`.\n",
2291
- "group": "development",
2292
- "private": false
2293
- },
2294
- {
2295
- "name": "unset <pattern> <aspect-id>",
2296
- "alias": "",
2297
- "options": [],
2298
- "description": "unset an aspect from component(s).",
2299
- "extendedDescription": "you can use a `<pattern>` for multiple component ids, such as `bit aspect unset \"org.scope/utils/**\"`. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nto validate the pattern before running this command, run `bit pattern <pattern>`.\n",
2300
- "group": "development",
2301
- "private": false
2302
- },
2303
- {
2304
- "name": "update <aspect-id> [pattern]",
2305
- "alias": "",
2306
- "options": [],
2307
- "description": "update a version of an aspect",
2308
- "extendedDescription": "default to all components using the aspect, unless \"pattern\" is provided.\nyou can use a `<pattern>` for multiple component ids, such as `bit aspect update <aspect-id> \"org.scope/utils/**\"`. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nto validate the pattern before running this command, run `bit pattern <pattern>`.\n\nexamples:\n\"bit aspect update scope.org/aspect '**/ui/**'\" - update \"ui\" components that use scope.org/aspect to the latest version\n\"bit aspect update scope.org/aspect@2.0.0\" - updates all components using scope.org/aspect to version 2.0.0.",
2309
- "group": "development",
2310
- "private": false
2311
- }
2312
- ]
2313
- },
2314
- {
2315
- "name": "clear-cache",
2316
- "alias": "cc",
2317
- "options": [
2318
- [
2319
- "r",
2320
- "remote <remote-name>",
2321
- "clear memory cache from a remote scope"
2322
- ]
2323
- ],
2324
- "description": "clears Bit's cache from current working machine",
2325
- "extendedDescription": "The following gets removed by this command:\n1) V8 compiled code (generated the first time Bit is loaded by v8-compile-cache package)\n2) components cache on the filesystem (mainly the dependencies graph and docs)\n3) scope's index file, which maps the component-id:object-hash\nhttps://bit.dev/docs/workspace/clearing-cache",
2326
- "group": "general",
2327
- "private": false,
2328
- "skipWorkspace": true
2329
- },
2330
- {
2331
- "name": "log <id>",
2332
- "alias": "",
2333
- "options": [
2334
- [
2335
- "r",
2336
- "remote",
2337
- "show log of a remote component"
2338
- ],
2339
- [
2340
- "",
2341
- "parents",
2342
- "EXPERIMENTAL. show parents and lanes data"
2343
- ]
2344
- ],
2345
- "description": "show components(s) version history",
2346
- "extendedDescription": "https://bit.dev/docs/reference/cli-reference#log",
2347
- "group": "info",
2348
- "private": false,
2349
- "remoteOp": true,
2350
- "skipWorkspace": true
2351
- },
2352
- {
2353
- "name": "deprecate <id>",
2354
- "alias": "d",
2355
- "options": [
2356
- [
2357
- "",
2358
- "new-id <string>",
2359
- "if replaced by another component, enter the new component id"
2360
- ]
2361
- ],
2362
- "description": "deprecate a component",
2363
- "extendedDescription": "",
2364
- "group": "collaborate",
2365
- "private": false,
2366
- "remoteOp": true,
2367
- "skipWorkspace": true
2368
- },
2369
- {
2370
- "name": "undeprecate <id>",
2371
- "alias": "",
2372
- "options": [],
2373
- "description": "undeprecate a deprecated component (local/remote)",
2374
- "extendedDescription": "",
2375
- "group": "collaborate",
2376
- "private": false,
2377
- "remoteOp": true,
2378
- "skipWorkspace": true
2379
- },
2380
- {
2381
- "name": "rename <source-name> <target-name>",
2382
- "alias": "",
2383
- "options": [
2384
- [
2385
- "s",
2386
- "scope <string>",
2387
- "default scope for the newly created component"
2388
- ],
2389
- [
2390
- "p",
2391
- "path <string>",
2392
- "relative path in the workspace. by default the path is `<scope>/<namespace>/<name>`"
2393
- ],
2394
- [
2395
- "r",
2396
- "refactor",
2397
- "change the source code of all components using this component with the new package-name"
2398
- ]
2399
- ],
2400
- "description": "EXPERIMENTAL. rename component. if tagged/exported, create a new component and deprecate the source-component",
2401
- "extendedDescription": "the `<target-name>` should include the component-name only, without the scope-name.\nto assign a default-scope to this component, please use \"--scope\" flag",
2402
- "group": "collaborate",
2403
- "private": false,
2404
- "remoteOp": true,
2405
- "skipWorkspace": true
2406
- },
2407
- {
2408
- "name": "fork <source-id> [target-name]",
2409
- "alias": "",
2410
- "options": [
2411
- [
2412
- "s",
2413
- "scope <string>",
2414
- "default scope for the newly created component"
2415
- ],
2416
- [
2417
- "p",
2418
- "path <string>",
2419
- "relative path in the workspace. by default the path is `<scope>/<namespace>/<name>`"
2420
- ],
2421
- [
2422
- "r",
2423
- "refactor",
2424
- "change the source code of all components using the original component with the new package-name"
2425
- ]
2426
- ],
2427
- "description": "EXPERIMENTAL. create a new component out of an existing one",
2428
- "extendedDescription": "note that [target-name] is the name only without the scope.\nto set the default-scope, please use --scope flag",
2429
- "group": "collaborate",
2430
- "private": false,
2431
- "remoteOp": true,
2432
- "skipWorkspace": true
2433
- },
2434
- {
2435
- "name": "lane [name]",
2436
- "alias": "",
2437
- "options": [
2438
- [
2439
- "d",
2440
- "details",
2441
- "show more details on the state of each component in each lane"
2442
- ],
2443
- [
2444
- "j",
2445
- "json",
2446
- "show lanes details in json format"
2447
- ],
2448
- [
2449
- "r",
2450
- "remote <string>",
2451
- "show remote lanes"
2452
- ],
2453
- [
2454
- "",
2455
- "merged",
2456
- "show merged lanes"
2457
- ],
2458
- [
2459
- "",
2460
- "not-merged",
2461
- "show not merged lanes"
2462
- ]
2463
- ],
2464
- "description": "show lanes details\nhttps://bit.dev/docs/components/lanes",
2465
- "extendedDescription": "",
2466
- "group": "ungrouped",
2467
- "private": true,
2468
- "remoteOp": true,
2469
- "skipWorkspace": true,
2470
- "commands": [
2471
- {
2472
- "name": "list",
1894
+ "name": "show <lane-name>",
2473
1895
  "alias": "",
2474
1896
  "options": [
2475
- [
2476
- "d",
2477
- "details",
2478
- "show more details on the state of each component in each lane"
2479
- ],
2480
1897
  [
2481
1898
  "j",
2482
1899
  "json",
2483
- "show lanes details in json format"
1900
+ "show the lane details in json format"
2484
1901
  ],
2485
1902
  [
2486
1903
  "r",
2487
1904
  "remote <string>",
2488
1905
  "show remote lanes"
2489
- ],
2490
- [
2491
- "",
2492
- "merged",
2493
- "show merged lanes"
2494
- ],
2495
- [
2496
- "",
2497
- "not-merged",
2498
- "show not merged lanes"
2499
1906
  ]
2500
1907
  ],
2501
- "description": "list lanes",
1908
+ "description": "show lane details",
2502
1909
  "extendedDescription": "",
2503
1910
  "group": "ungrouped",
2504
1911
  "private": true,
@@ -2506,93 +1913,163 @@
2506
1913
  "skipWorkspace": true
2507
1914
  },
2508
1915
  {
2509
- "name": "switch <lane>",
1916
+ "name": "create <lane-name>",
2510
1917
  "alias": "",
2511
1918
  "options": [
2512
- [
2513
- "n",
2514
- "alias <string>",
2515
- "relevant when the specified lane is a remote late. name a local lane differently than the remote lane"
2516
- ],
2517
- [
2518
- "m",
2519
- "merge [strategy]",
2520
- "merge local changes with the checked out version. strategy should be \"theirs\", \"ours\" or \"manual\""
2521
- ],
2522
- [
2523
- "a",
2524
- "get-all",
2525
- "checkout all components in a lane include ones that do not exist in the workspace"
2526
- ],
2527
1919
  [
2528
1920
  "",
2529
- "skip-dependency-installation",
2530
- "do not install packages of the imported components"
1921
+ "remote-scope <scope-name>",
1922
+ "remote scope where this lane will be exported to, default to the defaultScope (can be changed later with \"bit lane change-scope\")"
2531
1923
  ],
2532
1924
  [
2533
- "j",
2534
- "json",
2535
- "return the output as JSON"
1925
+ "",
1926
+ "alias <name>",
1927
+ "a local alias to refer to this lane, defaults to the <lane-name> (can be added later with \"bit lane alias\")"
2536
1928
  ]
2537
1929
  ],
2538
- "description": "switch to the specified lane",
2539
- "extendedDescription": "",
1930
+ "description": "creates a new lane and switches to it",
1931
+ "extendedDescription": "a lane created from main (default-lane) is empty until components are snapped.\na lane created from another lane has all the components of the original lane.",
2540
1932
  "group": "ungrouped",
2541
- "private": true
1933
+ "private": true,
1934
+ "arguments": [
1935
+ {
1936
+ "name": "lane-name",
1937
+ "description": "the name for the new lane"
1938
+ }
1939
+ ]
2542
1940
  },
2543
1941
  {
2544
- "name": "show <name>",
1942
+ "name": "remove <lanes...>",
2545
1943
  "alias": "",
2546
1944
  "options": [
2547
1945
  [
2548
- "j",
2549
- "json",
2550
- "show the lane details in json format"
1946
+ "r",
1947
+ "remote",
1948
+ "remove a remote lane (in the lane arg, use remote/lane-id syntax)"
2551
1949
  ],
2552
1950
  [
2553
- "r",
2554
- "remote <string>",
2555
- "show remote lanes"
1951
+ "f",
1952
+ "force",
1953
+ "removes the component from the scope, even if used as a dependency. WARNING: components that depend on this component will corrupt"
1954
+ ],
1955
+ [
1956
+ "s",
1957
+ "silent",
1958
+ "skip confirmation"
2556
1959
  ]
2557
1960
  ],
2558
- "description": "show lane details",
1961
+ "description": "remove lanes",
2559
1962
  "extendedDescription": "",
2560
1963
  "group": "ungrouped",
2561
1964
  "private": true,
2562
- "remoteOp": true,
2563
- "skipWorkspace": true
1965
+ "arguments": [
1966
+ {
1967
+ "name": "lanes...",
1968
+ "description": "A list of lane names, separated by spaces"
1969
+ }
1970
+ ]
2564
1971
  },
2565
1972
  {
2566
- "name": "create <name>",
1973
+ "name": "change-scope <lane-name> <remote-scope-name>",
2567
1974
  "alias": "",
2568
- "options": [
2569
- [
2570
- "",
2571
- "remote-scope <string>",
2572
- "remote scope where this lane will be exported to, default to the defaultScope (can be changed later with \"bit lane change-scope\")"
2573
- ],
2574
- [
2575
- "",
2576
- "alias <string>",
2577
- "a local alias to refer to this lane, default to the <name> (can be added later with \"bit lane alias\")"
2578
- ]
2579
- ],
2580
- "description": "create and switch to a new lane",
2581
- "extendedDescription": "a lane created from main (default-lane) is empty until components are snapped.\na lane created from another lane has all the components of the original lane.",
1975
+ "options": [],
1976
+ "description": "changes the remote scope of a lane",
1977
+ "extendedDescription": "",
2582
1978
  "group": "ungrouped",
2583
1979
  "private": true
2584
1980
  },
2585
1981
  {
2586
- "name": "merge <lane>",
1982
+ "name": "alias <lane-name> <alias>",
2587
1983
  "alias": "",
2588
- "options": [
2589
- [
2590
- "",
2591
- "remote <name>",
2592
- "remote scope name"
2593
- ],
2594
- [
2595
- "",
1984
+ "options": [],
1985
+ "description": "adds an alias to a lane",
1986
+ "extendedDescription": "an alias is a name that can be used to refer to a lane. it is saved locally and never reach the remote.\nit is useful when having multiple lanes with the same name, but with different remote scopes.",
1987
+ "group": "ungrouped",
1988
+ "private": true
1989
+ },
1990
+ {
1991
+ "name": "rename <current-name> <new-name>",
1992
+ "alias": "",
1993
+ "options": [],
1994
+ "description": "EXPERIMENTAL. change the lane-name locally and on the remote (if exported)",
1995
+ "extendedDescription": "",
1996
+ "group": "ungrouped",
1997
+ "private": true
1998
+ },
1999
+ {
2000
+ "name": "diff [values...]",
2001
+ "alias": "",
2002
+ "options": [
2003
+ [
2004
+ "",
2005
+ "pattern <component-pattern>",
2006
+ "EXPERIMENTAL. show lane-diff for the specified component-pattern only"
2007
+ ]
2008
+ ],
2009
+ "description": "show diff between lanes",
2010
+ "extendedDescription": "bit lane diff => diff between the current lane and default lane. (only inside workspace).\nbit lane diff to => diff between the current lane (or default-lane when in scope) and \"to\" lane.\nbit lane diff from to => diff between \"from\" lane and \"to\" lane.",
2011
+ "group": "ungrouped",
2012
+ "private": true,
2013
+ "remoteOp": true,
2014
+ "skipWorkspace": true
2015
+ },
2016
+ {
2017
+ "name": "add-readme <component-name> [lane-name]",
2018
+ "alias": "",
2019
+ "options": [],
2020
+ "description": "EXPERIMENTAL. adds a readme component to a lane",
2021
+ "extendedDescription": "",
2022
+ "group": "ungrouped",
2023
+ "private": true,
2024
+ "skipWorkspace": false,
2025
+ "arguments": [
2026
+ {
2027
+ "name": "component-id",
2028
+ "description": "the component name or id of the component to use as the lane's readme"
2029
+ },
2030
+ {
2031
+ "name": "lane-name",
2032
+ "description": "the lane to attach the readme to (defaults to the current lane)"
2033
+ }
2034
+ ]
2035
+ },
2036
+ {
2037
+ "name": "remove-readme [laneName]",
2038
+ "alias": "",
2039
+ "options": [],
2040
+ "description": "EXPERIMENTAL. remove lane readme component",
2041
+ "extendedDescription": "",
2042
+ "group": "ungrouped",
2043
+ "private": true,
2044
+ "skipWorkspace": false
2045
+ },
2046
+ {
2047
+ "name": "import <lane>",
2048
+ "alias": "",
2049
+ "options": [
2050
+ [
2051
+ "",
2052
+ "skip-dependency-installation",
2053
+ "do not install packages of the imported components"
2054
+ ]
2055
+ ],
2056
+ "description": "import a remote lane to your workspace",
2057
+ "extendedDescription": "",
2058
+ "group": "ungrouped",
2059
+ "private": true,
2060
+ "arguments": [
2061
+ {
2062
+ "name": "lane",
2063
+ "description": "the remote lane name"
2064
+ }
2065
+ ]
2066
+ },
2067
+ {
2068
+ "name": "merge <lane> [pattern]",
2069
+ "alias": "",
2070
+ "options": [
2071
+ [
2072
+ "",
2596
2073
  "ours",
2597
2074
  "in case of a conflict, override the used version with the current modification"
2598
2075
  ],
@@ -2608,8 +2085,8 @@
2608
2085
  ],
2609
2086
  [
2610
2087
  "",
2611
- "existing",
2612
- "checkout only components in a lane that exist in the workspace"
2088
+ "workspace",
2089
+ "merge only components in a lane that exist in the workspace"
2613
2090
  ],
2614
2091
  [
2615
2092
  "",
@@ -2630,151 +2107,1176 @@
2630
2107
  "",
2631
2108
  "keep-readme",
2632
2109
  "skip deleting the lane readme component after merging"
2110
+ ],
2111
+ [
2112
+ "",
2113
+ "no-squash",
2114
+ "EXPERIMENTAL. relevant for merging lanes into main, which by default squash."
2115
+ ],
2116
+ [
2117
+ "",
2118
+ "verbose",
2119
+ "show details of components that were not merged legitimately"
2120
+ ],
2121
+ [
2122
+ "",
2123
+ "skip-dependency-installation",
2124
+ "do not install packages of the imported components"
2125
+ ],
2126
+ [
2127
+ "",
2128
+ "remote",
2129
+ "relevant when the target-lane locally is differ than the remote and you want the remote"
2130
+ ],
2131
+ [
2132
+ "",
2133
+ "include-deps",
2134
+ "EXPERIMENTAL. relevant for \"--pattern\" and \"--workspace\". merge also dependencies of the given components"
2135
+ ],
2136
+ [
2137
+ "",
2138
+ "resolve-unrelated [merge-strategy]",
2139
+ "EXPERIMENTAL. relevant when a component on a lane and the component on main has nothing in common. merge-strategy can be \"ours\" (default) or \"theirs\""
2140
+ ]
2141
+ ],
2142
+ "description": "merge a local or a remote lane",
2143
+ "extendedDescription": "if the <lane> exists locally, it will be merged from the local lane.\notherwise, it will fetch the lane from the remote and merge it.\nin case the <lane> exists locally but you want to merge the remote version of it, use --remote flag",
2144
+ "private": true,
2145
+ "remoteOp": true,
2146
+ "arguments": [
2147
+ {
2148
+ "name": "lane",
2149
+ "description": "lane-name or lane-id (if not exists locally) to merge to the current lane"
2150
+ },
2151
+ {
2152
+ "name": "pattern",
2153
+ "description": "EXPERIMENTAL. partially merge the lane with the specified component-pattern"
2154
+ }
2155
+ ]
2156
+ }
2157
+ ]
2158
+ },
2159
+ {
2160
+ "name": "switch <lane>",
2161
+ "alias": "",
2162
+ "options": [
2163
+ [
2164
+ "n",
2165
+ "alias <string>",
2166
+ "relevant when the specified lane is a remote late. name a local lane differently than the remote lane"
2167
+ ],
2168
+ [
2169
+ "m",
2170
+ "merge [strategy]",
2171
+ "merge local changes with the checked out version. strategy should be \"theirs\", \"ours\" or \"manual\""
2172
+ ],
2173
+ [
2174
+ "a",
2175
+ "get-all",
2176
+ "checkout all components in a lane include ones that do not exist in the workspace"
2177
+ ],
2178
+ [
2179
+ "",
2180
+ "skip-dependency-installation",
2181
+ "do not install packages of the imported components"
2182
+ ],
2183
+ [
2184
+ "j",
2185
+ "json",
2186
+ "return the output as JSON"
2187
+ ]
2188
+ ],
2189
+ "description": "switch to the specified lane",
2190
+ "extendedDescription": "",
2191
+ "group": "ungrouped",
2192
+ "private": true
2193
+ },
2194
+ {
2195
+ "name": "dependencies <sub-command>",
2196
+ "alias": "deps",
2197
+ "options": [],
2198
+ "description": "manage dependencies",
2199
+ "extendedDescription": "",
2200
+ "group": "info",
2201
+ "private": false,
2202
+ "commands": [
2203
+ {
2204
+ "name": "get <component-name>",
2205
+ "alias": "",
2206
+ "options": [
2207
+ [
2208
+ "t",
2209
+ "tree",
2210
+ "EXPERIMENTAL. render dependencies as a tree, similar to \"npm ls\""
2211
+ ]
2212
+ ],
2213
+ "description": "show direct and indirect dependencies of the given component",
2214
+ "extendedDescription": "",
2215
+ "group": "info",
2216
+ "private": false,
2217
+ "arguments": [
2218
+ {
2219
+ "name": "component-name",
2220
+ "description": "component name or component id"
2221
+ }
2222
+ ]
2223
+ },
2224
+ {
2225
+ "name": "remove <component-pattern> <package...>",
2226
+ "alias": "",
2227
+ "options": [],
2228
+ "description": "remove a dependency to component(s)",
2229
+ "extendedDescription": "",
2230
+ "group": "info",
2231
+ "private": false,
2232
+ "arguments": [
2233
+ {
2234
+ "name": "component-pattern",
2235
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
2236
+ },
2237
+ {
2238
+ "name": "package",
2239
+ "description": "package name with or without a version, e.g. \"lodash@1.0.0\" or just \"lodash\" which will remove all lodash instances of any version"
2240
+ }
2241
+ ]
2242
+ },
2243
+ {
2244
+ "name": "debug <component-name>",
2245
+ "alias": "",
2246
+ "options": [],
2247
+ "description": "show the immediate dependencies and how their versions were determined",
2248
+ "extendedDescription": "",
2249
+ "group": "info",
2250
+ "private": false,
2251
+ "arguments": [
2252
+ {
2253
+ "name": "component-name",
2254
+ "description": "component name or component id"
2255
+ }
2256
+ ]
2257
+ },
2258
+ {
2259
+ "name": "set <component-pattern> <package...>",
2260
+ "alias": "",
2261
+ "options": [
2262
+ [
2263
+ "d",
2264
+ "dev",
2265
+ "add to the devDependencies"
2266
+ ],
2267
+ [
2268
+ "p",
2269
+ "peer",
2270
+ "add to the peerDependencies"
2271
+ ]
2272
+ ],
2273
+ "description": "set a dependency to component(s)",
2274
+ "extendedDescription": "",
2275
+ "group": "info",
2276
+ "private": false,
2277
+ "arguments": [
2278
+ {
2279
+ "name": "component-pattern",
2280
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
2281
+ },
2282
+ {
2283
+ "name": "package",
2284
+ "description": "package name with or without a version, e.g. \"lodash@1.0.0\" or just \"lodash\" which will be resolved to the latest"
2285
+ }
2286
+ ]
2287
+ }
2288
+ ]
2289
+ },
2290
+ {
2291
+ "name": "list [remote-scope]",
2292
+ "alias": "ls",
2293
+ "options": [
2294
+ [
2295
+ "i",
2296
+ "ids",
2297
+ "show only component ids unformatted"
2298
+ ],
2299
+ [
2300
+ "s",
2301
+ "scope",
2302
+ "show only components stored in the local scope, including indirect dependencies"
2303
+ ],
2304
+ [
2305
+ "o",
2306
+ "outdated",
2307
+ "show latest versions from remotes"
2308
+ ],
2309
+ [
2310
+ "j",
2311
+ "json",
2312
+ "show the output in JSON format"
2313
+ ],
2314
+ [
2315
+ "n",
2316
+ "namespace <string>",
2317
+ "show only specified namespace by using wildcards"
2318
+ ]
2319
+ ],
2320
+ "description": "list components on a workspace, local scope or a remote scope.",
2321
+ "extendedDescription": "https://bit.dev/docs/reference/cli-reference#list",
2322
+ "group": "discover",
2323
+ "private": false,
2324
+ "remoteOp": true,
2325
+ "skipWorkspace": true
2326
+ },
2327
+ {
2328
+ "name": "import [component-patterns...]",
2329
+ "alias": "",
2330
+ "options": [
2331
+ [
2332
+ "p",
2333
+ "path <path>",
2334
+ "import components into a specific directory (a relative path in the workspace)"
2335
+ ],
2336
+ [
2337
+ "o",
2338
+ "objects",
2339
+ "import components objects to the local scope without checkout (without writing them to the file system). This is a default behavior for import with no id argument"
2340
+ ],
2341
+ [
2342
+ "d",
2343
+ "display-dependencies",
2344
+ "display the imported dependencies"
2345
+ ],
2346
+ [
2347
+ "O",
2348
+ "override",
2349
+ "override local changes"
2350
+ ],
2351
+ [
2352
+ "v",
2353
+ "verbose",
2354
+ "show verbose output for inspection"
2355
+ ],
2356
+ [
2357
+ "j",
2358
+ "json",
2359
+ "return the output as JSON"
2360
+ ],
2361
+ [
2362
+ "",
2363
+ "conf",
2364
+ "write the configuration file (component.json) of the component"
2365
+ ],
2366
+ [
2367
+ "",
2368
+ "skip-npm-install",
2369
+ "DEPRECATED. use \"--skip-dependency-installation\" instead"
2370
+ ],
2371
+ [
2372
+ "",
2373
+ "skip-dependency-installation",
2374
+ "do not install packages of the imported components"
2375
+ ],
2376
+ [
2377
+ "m",
2378
+ "merge [strategy]",
2379
+ "merge local changes with the imported version. strategy should be \"theirs\", \"ours\" or \"manual\""
2380
+ ],
2381
+ [
2382
+ "",
2383
+ "dependencies",
2384
+ "EXPERIMENTAL. import all dependencies and write them to the workspace"
2385
+ ],
2386
+ [
2387
+ "",
2388
+ "dependents",
2389
+ "EXPERIMENTAL. import the components' dependents. this enables changes to propagate from (modified) components to their dependents"
2390
+ ],
2391
+ [
2392
+ "",
2393
+ "save-in-lane",
2394
+ "EXPERIMENTAL. when checked out to a lane and the component is not on the remote-lane, save it in the lane (default to save on main)"
2395
+ ],
2396
+ [
2397
+ "",
2398
+ "all-history",
2399
+ "relevant for fetching all components objects. avoid optimizations, fetch all history versions, always"
2400
+ ]
2401
+ ],
2402
+ "description": "import components from their remote scopes to the local workspace",
2403
+ "extendedDescription": "https://bit.dev/docs/components/importing-components\nyou can use a pattern for multiple ids, such as bit import \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
2404
+ "group": "collaborate",
2405
+ "private": false,
2406
+ "remoteOp": true,
2407
+ "arguments": [
2408
+ {
2409
+ "name": "component-patterns...",
2410
+ "description": "component IDs or component patterns (separated by space). Use patterns to import groups of components using a common scope or namespace. E.g., \"utils/*\" (wrap with double quotes)"
2411
+ }
2412
+ ]
2413
+ },
2414
+ {
2415
+ "name": "create <template-name> <component-names...>",
2416
+ "alias": "",
2417
+ "options": [
2418
+ [
2419
+ "n",
2420
+ "namespace <string>",
2421
+ "sets the component's namespace and nested dirs inside the scope"
2422
+ ],
2423
+ [
2424
+ "s",
2425
+ "scope <string>",
2426
+ "sets the component's scope-name. if not entered, the default-scope will be used"
2427
+ ],
2428
+ [
2429
+ "a",
2430
+ "aspect <string>",
2431
+ "aspect-id of the template. helpful when multiple aspects use the same template name"
2432
+ ],
2433
+ [
2434
+ "p",
2435
+ "path <string>",
2436
+ "relative path in the workspace. by default the path is `<scope>/<namespace>/<name>`"
2437
+ ],
2438
+ [
2439
+ "e",
2440
+ "env <string>",
2441
+ "set the component's environment. (overrides the env from variants and the template)"
2442
+ ]
2443
+ ],
2444
+ "description": "create a new component (source files and config) using a template.",
2445
+ "extendedDescription": "",
2446
+ "group": "development",
2447
+ "private": false,
2448
+ "arguments": [
2449
+ {
2450
+ "name": "template-name",
2451
+ "description": "the template for generating the component \n(run 'bit templates' for a list of available templates)"
2452
+ },
2453
+ {
2454
+ "name": "component-names...",
2455
+ "description": "a list of component names to generate"
2456
+ }
2457
+ ],
2458
+ "examples": [
2459
+ {
2460
+ "cmd": "bit create react ui/button",
2461
+ "description": "creates a component named 'ui/button' using the 'react' template"
2462
+ },
2463
+ {
2464
+ "cmd": "bit create react ui/button pages/register",
2465
+ "description": "creates two components, 'ui/button' and 'pages/register', using the 'react' template"
2466
+ },
2467
+ {
2468
+ "cmd": "bit create react ui/button --scope my-org.my-scope",
2469
+ "description": "creates a component named 'ui/button' and sets it scope to 'my-org.my-scope'. \nby default, the scope is the `defaultScope` value, configured in your `workspace.jsonc`."
2470
+ },
2471
+ {
2472
+ "cmd": "bit create react ui/button --env teambit.community/envs/community-react@1.95.13",
2473
+ "description": "creates a component named 'ui/button' and sets it to use the 'community-react' env. \n(the template's default env is 'teambit.react/react')."
2474
+ }
2475
+ ]
2476
+ },
2477
+ {
2478
+ "name": "templates",
2479
+ "alias": "",
2480
+ "options": [
2481
+ [
2482
+ "s",
2483
+ "show-all",
2484
+ "show hidden templates"
2485
+ ]
2486
+ ],
2487
+ "description": "list templates for \"bit create\" and \"bit new\"",
2488
+ "extendedDescription": "list components templates when inside bit-workspace (for bit-create), otherwise, list workspace templates (for bit-new)",
2489
+ "group": "development",
2490
+ "private": false
2491
+ },
2492
+ {
2493
+ "name": "new <template-name> <workspace-name>",
2494
+ "alias": "",
2495
+ "options": [
2496
+ [
2497
+ "a",
2498
+ "aspect <aspect-id>",
2499
+ "aspect-id of the template. mandatory for non-core aspects. helpful for core aspects in case of a name collision"
2500
+ ],
2501
+ [
2502
+ "d",
2503
+ "default-scope <scope-name>",
2504
+ "set defaultScope in the new workspace.jsonc"
2505
+ ],
2506
+ [
2507
+ "",
2508
+ "standalone",
2509
+ "DEPRECATED. use --skip-git instead"
2510
+ ],
2511
+ [
2512
+ "s",
2513
+ "skip-git",
2514
+ "skip generation of Git repository"
2515
+ ],
2516
+ [
2517
+ "e",
2518
+ "empty",
2519
+ "empty workspace with no components (relevant for templates that add components by default)"
2520
+ ],
2521
+ [
2522
+ "",
2523
+ "load-from <path-to-template>",
2524
+ "path to the workspace containing the template. helpful during a development of a workspace-template"
2525
+ ]
2526
+ ],
2527
+ "description": "create a new workspace from a template",
2528
+ "extendedDescription": "",
2529
+ "group": "start",
2530
+ "private": false,
2531
+ "arguments": [
2532
+ {
2533
+ "name": "template-name",
2534
+ "description": "the name of the workspace template (run 'bit templates', outside of a workspace, to get a list of available templates)"
2535
+ },
2536
+ {
2537
+ "name": "workspace-name",
2538
+ "description": "the name for the new workspace and workspace directory"
2539
+ }
2540
+ ]
2541
+ },
2542
+ {
2543
+ "name": "build [component-pattern]",
2544
+ "alias": "",
2545
+ "options": [
2546
+ [
2547
+ "a",
2548
+ "all",
2549
+ "build all components, not only modified and new"
2550
+ ],
2551
+ [
2552
+ "d",
2553
+ "dev",
2554
+ "run the pipeline in dev mode"
2555
+ ],
2556
+ [
2557
+ "",
2558
+ "install",
2559
+ "install core aspects in capsules"
2560
+ ],
2561
+ [
2562
+ "",
2563
+ "reuse-capsules",
2564
+ "avoid deleting the capsules root-dir before starting the build"
2565
+ ],
2566
+ [
2567
+ "",
2568
+ "tasks <string>",
2569
+ "build the specified task(s) only. for multiple tasks, separate by a comma and wrap with quotes.\nspecify the task-name (e.g. \"TypescriptCompiler\") or the task-aspect-id (e.g. teambit.compilation/compiler)"
2570
+ ],
2571
+ [
2572
+ "",
2573
+ "cache-packages-on-capsule-root",
2574
+ "set the package-manager cache on the capsule root"
2575
+ ],
2576
+ [
2577
+ "",
2578
+ "list-tasks <string>",
2579
+ "list tasks of an env or a component-id for each one of the pipelines: build, tag and snap"
2580
+ ]
2581
+ ],
2582
+ "description": "run set of tasks for build",
2583
+ "extendedDescription": "",
2584
+ "group": "development",
2585
+ "private": false,
2586
+ "arguments": [
2587
+ {
2588
+ "name": "component-pattern",
2589
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
2590
+ }
2591
+ ]
2592
+ },
2593
+ {
2594
+ "name": "artifacts <component-pattern>",
2595
+ "alias": "",
2596
+ "options": [
2597
+ [
2598
+ "",
2599
+ "aspect <aspect-id>",
2600
+ "show/download only artifacts generated by this aspect-id"
2601
+ ],
2602
+ [
2603
+ "",
2604
+ "task <task-id>",
2605
+ "show/download only artifacts generated by this task-id"
2606
+ ],
2607
+ [
2608
+ "",
2609
+ "files <glob>",
2610
+ "show/download only artifacts matching the given files or the glob pattern (wrap glob patterns in quotes)"
2611
+ ],
2612
+ [
2613
+ "",
2614
+ "out-dir <string>",
2615
+ "download the files to the specified dir"
2616
+ ]
2617
+ ],
2618
+ "description": "EXPERIMENTAL. list and download components artifacts",
2619
+ "extendedDescription": "artifacts are created on isolated capsules during tag or snap commands.\nexample of artifacts are dists files generated by a compiler, a JUnit.xml file generated by a tester\nand a package.tgz file generated by pkg aspect.\n",
2620
+ "group": "development",
2621
+ "private": false,
2622
+ "arguments": [
2623
+ {
2624
+ "name": "component-pattern",
2625
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
2626
+ }
2627
+ ]
2628
+ },
2629
+ {
2630
+ "name": "pack <componentId> [scopePath]",
2631
+ "alias": "",
2632
+ "options": [
2633
+ [
2634
+ "d",
2635
+ "out-dir <out-dir>",
2636
+ "directory to put the result tar file"
2637
+ ],
2638
+ [
2639
+ "o",
2640
+ "override",
2641
+ "override existing pack file"
2642
+ ],
2643
+ [
2644
+ "k",
2645
+ "keep",
2646
+ "should keep isolated environment [default = false]"
2647
+ ],
2648
+ [
2649
+ "p",
2650
+ "prefix",
2651
+ "keep custom (binding) prefix"
2652
+ ],
2653
+ [
2654
+ "j",
2655
+ "json",
2656
+ "return the output as JSON"
2657
+ ]
2658
+ ],
2659
+ "description": "create tar for npm publish",
2660
+ "extendedDescription": "",
2661
+ "group": "collaborate",
2662
+ "private": false
2663
+ },
2664
+ {
2665
+ "name": "publish <component-pattern>",
2666
+ "alias": "",
2667
+ "options": [
2668
+ [
2669
+ "d",
2670
+ "dry-run",
2671
+ "npm publish --dry-run"
2672
+ ],
2673
+ [
2674
+ "",
2675
+ "allow-staged",
2676
+ "allow publish components that were not exported yet (not recommended)"
2677
+ ],
2678
+ [
2679
+ "j",
2680
+ "json",
2681
+ "return the output as JSON"
2682
+ ]
2683
+ ],
2684
+ "description": "publish components to npm (npm publish)",
2685
+ "extendedDescription": "",
2686
+ "group": "collaborate",
2687
+ "private": true,
2688
+ "arguments": [
2689
+ {
2690
+ "name": "component-pattern",
2691
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
2692
+ }
2693
+ ]
2694
+ },
2695
+ {
2696
+ "name": "refactor <sub-command>",
2697
+ "alias": "",
2698
+ "options": [],
2699
+ "description": "EXPERIMENTAL. source code refactoring / codemod",
2700
+ "extendedDescription": "",
2701
+ "group": "development",
2702
+ "private": false,
2703
+ "commands": [
2704
+ {
2705
+ "name": "dependency-name <old-id> <new-id>",
2706
+ "alias": "",
2707
+ "options": [],
2708
+ "description": "replace the dependency's old package-name with a new one in the code",
2709
+ "extendedDescription": "the `<old-id>` and `<new-id>` arguments can be either a component-id or a package-name.",
2710
+ "group": "development",
2711
+ "private": false
2712
+ }
2713
+ ]
2714
+ },
2715
+ {
2716
+ "name": "status",
2717
+ "alias": "s",
2718
+ "options": [
2719
+ [
2720
+ "j",
2721
+ "json",
2722
+ "return a json version of the component"
2723
+ ],
2724
+ [
2725
+ "",
2726
+ "verbose",
2727
+ "show full snap hashes"
2728
+ ],
2729
+ [
2730
+ "",
2731
+ "strict",
2732
+ "in case issues found, exit with code 1"
2733
+ ]
2734
+ ],
2735
+ "description": "present the current status of components in the workspace, and notifies when issues are detected",
2736
+ "extendedDescription": "",
2737
+ "group": "development",
2738
+ "private": false
2739
+ },
2740
+ {
2741
+ "name": "compile [component-names...]",
2742
+ "alias": "",
2743
+ "options": [
2744
+ [
2745
+ "c",
2746
+ "changed",
2747
+ "compile only new and modified components"
2748
+ ],
2749
+ [
2750
+ "v",
2751
+ "verbose",
2752
+ "show more data, such as, dist paths"
2753
+ ],
2754
+ [
2755
+ "j",
2756
+ "json",
2757
+ "return the compile results in json format"
2758
+ ],
2759
+ [
2760
+ "d",
2761
+ "delete-dist-dir",
2762
+ "delete existing dist folder before writing new compiled files"
2763
+ ]
2764
+ ],
2765
+ "description": "compile components in the workspace",
2766
+ "extendedDescription": "",
2767
+ "group": "development",
2768
+ "private": false,
2769
+ "arguments": [
2770
+ {
2771
+ "name": "component-names...",
2772
+ "description": "a list of component names or component IDs (defaults to all components)"
2773
+ }
2774
+ ]
2775
+ },
2776
+ {
2777
+ "name": "run <app-name>",
2778
+ "alias": "c",
2779
+ "options": [
2780
+ [
2781
+ "d",
2782
+ "dev",
2783
+ "start the application in dev mode."
2784
+ ],
2785
+ [
2786
+ "v",
2787
+ "verbose",
2788
+ "showing verbose output for inspection and prints stack trace"
2789
+ ],
2790
+ [
2791
+ "",
2792
+ "skip-watch",
2793
+ "avoid running the watch process that compiles components in the background"
2794
+ ],
2795
+ [
2796
+ "",
2797
+ "ssr",
2798
+ "run app in server side rendering mode."
2799
+ ]
2800
+ ],
2801
+ "description": "run an app (independent of bit's dev server)",
2802
+ "extendedDescription": "",
2803
+ "group": "apps",
2804
+ "private": false,
2805
+ "arguments": [
2806
+ {
2807
+ "name": "app-name",
2808
+ "description": "the app's name is registered by the app (run 'bit app list' to list the names of the available apps)"
2809
+ }
2810
+ ]
2811
+ },
2812
+ {
2813
+ "name": "app-list",
2814
+ "alias": "",
2815
+ "options": [
2816
+ [
2817
+ "j",
2818
+ "json",
2819
+ "return the component data in json format"
2820
+ ]
2821
+ ],
2822
+ "description": "DEPRECATED. use \"bit app list\"",
2823
+ "extendedDescription": "",
2824
+ "group": "apps",
2825
+ "private": true
2826
+ },
2827
+ {
2828
+ "name": "app <sub-command>",
2829
+ "alias": "",
2830
+ "options": [],
2831
+ "description": "Manages apps",
2832
+ "extendedDescription": "",
2833
+ "group": "apps",
2834
+ "private": false,
2835
+ "commands": [
2836
+ {
2837
+ "name": "list",
2838
+ "alias": "",
2839
+ "options": [
2840
+ [
2841
+ "j",
2842
+ "json",
2843
+ "return the component data in json format"
2844
+ ]
2845
+ ],
2846
+ "description": "list all registered apps",
2847
+ "extendedDescription": "",
2848
+ "group": "apps",
2849
+ "private": false
2850
+ },
2851
+ {
2852
+ "name": "run <app-name>",
2853
+ "alias": "c",
2854
+ "options": [
2855
+ [
2856
+ "d",
2857
+ "dev",
2858
+ "start the application in dev mode."
2859
+ ],
2860
+ [
2861
+ "v",
2862
+ "verbose",
2863
+ "showing verbose output for inspection and prints stack trace"
2864
+ ],
2865
+ [
2866
+ "",
2867
+ "skip-watch",
2868
+ "avoid running the watch process that compiles components in the background"
2869
+ ],
2870
+ [
2871
+ "",
2872
+ "ssr",
2873
+ "run app in server side rendering mode."
2874
+ ]
2875
+ ],
2876
+ "description": "run an app (independent of bit's dev server)",
2877
+ "extendedDescription": "",
2878
+ "group": "apps",
2879
+ "private": false,
2880
+ "arguments": [
2881
+ {
2882
+ "name": "app-name",
2883
+ "description": "the app's name is registered by the app (run 'bit app list' to list the names of the available apps)"
2884
+ }
2885
+ ]
2886
+ }
2887
+ ]
2888
+ },
2889
+ {
2890
+ "name": "test [component-pattern]",
2891
+ "alias": "at",
2892
+ "options": [
2893
+ [
2894
+ "w",
2895
+ "watch",
2896
+ "start the tester in watch mode."
2897
+ ],
2898
+ [
2899
+ "d",
2900
+ "debug",
2901
+ "start the tester in debug mode."
2902
+ ],
2903
+ [
2904
+ "a",
2905
+ "all",
2906
+ "test all components, not only new and modified"
2907
+ ],
2908
+ [
2909
+ "",
2910
+ "junit <filepath>",
2911
+ "write tests results as JUnit XML format into the specified file path"
2912
+ ],
2913
+ [
2914
+ "",
2915
+ "coverage",
2916
+ "show code coverage data"
2917
+ ],
2918
+ [
2919
+ "e",
2920
+ "env <id>",
2921
+ "test only the given env"
2922
+ ],
2923
+ [
2924
+ "s",
2925
+ "scope <scope-name>",
2926
+ "DEPRECATED. (use the pattern instead, e.g. \"scopeName/**\"). name of the scope to test"
2927
+ ]
2928
+ ],
2929
+ "description": "test components in the workspace",
2930
+ "extendedDescription": "",
2931
+ "group": "development",
2932
+ "private": false,
2933
+ "arguments": [
2934
+ {
2935
+ "name": "component-pattern",
2936
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
2937
+ }
2938
+ ]
2939
+ },
2940
+ {
2941
+ "name": "schema <pattern>",
2942
+ "alias": "",
2943
+ "options": [
2944
+ [
2945
+ "j",
2946
+ "json",
2947
+ "return the component data in json format"
2948
+ ]
2949
+ ],
2950
+ "description": "shows the API schema of a certain component.",
2951
+ "extendedDescription": "you 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\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nuse `bit pattern --help` to understand patterns better and `bit pattern <pattern>` to validate the pattern.\n",
2952
+ "group": "development",
2953
+ "private": false
2954
+ },
2955
+ {
2956
+ "name": "check-types [component-pattern]",
2957
+ "alias": "",
2958
+ "options": [
2959
+ [
2960
+ "a",
2961
+ "all",
2962
+ "check-types for all components, not only modified and new"
2963
+ ],
2964
+ [
2965
+ "",
2966
+ "strict",
2967
+ "in case issues found, exit with code 1"
2968
+ ]
2969
+ ],
2970
+ "description": "check typescript types",
2971
+ "extendedDescription": "",
2972
+ "group": "development",
2973
+ "private": false,
2974
+ "arguments": [
2975
+ {
2976
+ "name": "component-pattern",
2977
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components.\nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
2978
+ }
2979
+ ]
2980
+ },
2981
+ {
2982
+ "name": "aspect <sub-command>",
2983
+ "alias": "",
2984
+ "options": [],
2985
+ "description": "EXPERIMENTAL. manage aspects",
2986
+ "extendedDescription": "",
2987
+ "group": "development",
2988
+ "private": false,
2989
+ "commands": [
2990
+ {
2991
+ "name": "list [pattern]",
2992
+ "alias": "",
2993
+ "options": [
2994
+ [
2995
+ "d",
2996
+ "debug",
2997
+ "show the origins were the aspects were taken from"
2633
2998
  ]
2634
2999
  ],
2635
- "description": "merge a local or a remote lane",
3000
+ "description": "list all aspects configured on component(s)",
2636
3001
  "extendedDescription": "",
2637
- "group": "ungrouped",
2638
- "private": true,
2639
- "remoteOp": true
3002
+ "group": "development",
3003
+ "private": false,
3004
+ "arguments": [
3005
+ {
3006
+ "name": "pattern",
3007
+ "description": "component name, component id, or component pattern. use component pattern to select multiple components. \nuse comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
3008
+ }
3009
+ ]
2640
3010
  },
2641
3011
  {
2642
- "name": "remove <lane...>",
3012
+ "name": "get <component-name>",
2643
3013
  "alias": "",
2644
3014
  "options": [
2645
3015
  [
2646
- "r",
2647
- "remote",
2648
- "remove a remote lane (in the lane arg, use remote/lane-id syntax)"
2649
- ],
2650
- [
2651
- "f",
2652
- "force",
2653
- "removes the component from the scope, even if used as a dependency. WARNING: components that depend on this component will corrupt"
3016
+ "d",
3017
+ "debug",
3018
+ "show the origins were the aspects were taken from"
2654
3019
  ],
2655
3020
  [
2656
- "s",
2657
- "silent",
2658
- "skip confirmation"
3021
+ "j",
3022
+ "json",
3023
+ "format as json"
2659
3024
  ]
2660
3025
  ],
2661
- "description": "remove lanes",
3026
+ "description": "list the aspects set on a component, as well as their config and data",
2662
3027
  "extendedDescription": "",
2663
- "group": "ungrouped",
2664
- "private": true
3028
+ "group": "development",
3029
+ "private": false,
3030
+ "arguments": [
3031
+ {
3032
+ "name": "component-name",
3033
+ "description": "the component name or component id"
3034
+ }
3035
+ ]
2665
3036
  },
2666
3037
  {
2667
- "name": "change-scope <lane-name> <remote-scope>",
3038
+ "name": "set <pattern> <aspect-id> [config]",
2668
3039
  "alias": "",
2669
- "options": [],
2670
- "description": "change the remote scope of a lane",
3040
+ "options": [
3041
+ [
3042
+ "m",
3043
+ "merge",
3044
+ "merge with an existing config if exits. (by default, it replaces the config)"
3045
+ ]
3046
+ ],
3047
+ "description": "set components with an aspect to extend their development tools, metadata and (possibly) artifacts",
2671
3048
  "extendedDescription": "",
2672
- "group": "ungrouped",
2673
- "private": true
3049
+ "group": "development",
3050
+ "private": false,
3051
+ "arguments": [
3052
+ {
3053
+ "name": "pattern",
3054
+ "description": "the components to extend. use component name, component id, or component pattern. use component pattern to select multiple components. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\". wrap the pattern with quotes"
3055
+ },
3056
+ {
3057
+ "name": "aspect-id",
3058
+ "description": "the aspect's component id"
3059
+ },
3060
+ {
3061
+ "name": "config",
3062
+ "description": "the aspect config. enter the config as a stringified JSON (e.g. '{\"foo\":\"bar\"}' ). when no config is provided, an aspect is set with an empty config ({})."
3063
+ }
3064
+ ]
2674
3065
  },
2675
3066
  {
2676
- "name": "alias <lane-name> <alias>",
3067
+ "name": "unset <pattern> <aspect-id>",
2677
3068
  "alias": "",
2678
3069
  "options": [],
2679
- "description": "add an alias to a lane",
2680
- "extendedDescription": "an alias is a name that can be used to refer to a lane. it is saved locally and never reach the remote.\nit is useful when having multiple lanes with the same name, but with different remote scopes.",
2681
- "group": "ungrouped",
2682
- "private": true
3070
+ "description": "unset an aspect from component(s).",
3071
+ "extendedDescription": "",
3072
+ "group": "development",
3073
+ "private": false,
3074
+ "arguments": [
3075
+ {
3076
+ "name": "pattern",
3077
+ "description": "the components to target. use component name, component id, or component pattern. use component pattern to select multiple components. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\". wrap the pattern with quotes"
3078
+ },
3079
+ {
3080
+ "name": "aspect-id",
3081
+ "description": "the aspect's component id"
3082
+ }
3083
+ ]
2683
3084
  },
2684
3085
  {
2685
- "name": "rename <current-name> <new-name>",
3086
+ "name": "update <aspect-id> [pattern]",
2686
3087
  "alias": "",
2687
3088
  "options": [],
2688
- "description": "EXPERIMENTAL. change the lane-name locally and on the remote (if exported)",
3089
+ "description": "update a version of an aspect",
2689
3090
  "extendedDescription": "",
2690
- "group": "ungrouped",
2691
- "private": true
2692
- },
3091
+ "group": "development",
3092
+ "private": false,
3093
+ "arguments": [
3094
+ {
3095
+ "name": "aspect-id",
3096
+ "description": "the aspect's component id. optionally, add a version (id@version), otherwise, it finds the latest version on the remote"
3097
+ },
3098
+ {
3099
+ "name": "pattern",
3100
+ "description": "the components to update (defaults to all components). use component name, component id, or component pattern. use component pattern to select multiple components. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\". wrap the pattern with quotes"
3101
+ }
3102
+ ],
3103
+ "examples": [
3104
+ {
3105
+ "cmd": "update scope.org/aspect '**/ui/**'",
3106
+ "description": "update \"ui\" components that use scope.org/aspect to use its latest version"
3107
+ },
3108
+ {
3109
+ "cmd": "bit aspect update scope.org/aspect@2.0.0",
3110
+ "description": "update all components that use scope.org/aspect to version 2.0.0 (of this aspect)."
3111
+ }
3112
+ ]
3113
+ }
3114
+ ]
3115
+ },
3116
+ {
3117
+ "name": "clear-cache",
3118
+ "alias": "cc",
3119
+ "options": [
3120
+ [
3121
+ "r",
3122
+ "remote <remote-name>",
3123
+ "clear memory cache from a remote scope"
3124
+ ]
3125
+ ],
3126
+ "description": "clears Bit's cache from current working machine",
3127
+ "extendedDescription": "The following gets removed by this command:\n1) V8 compiled code (generated the first time Bit is loaded by v8-compile-cache package)\n2) components cache on the filesystem (mainly the dependencies graph and docs)\n3) scope's index file, which maps the component-id:object-hash\nhttps://bit.dev/docs/workspace/clearing-cache",
3128
+ "group": "general",
3129
+ "private": false,
3130
+ "skipWorkspace": true
3131
+ },
3132
+ {
3133
+ "name": "log <id>",
3134
+ "alias": "",
3135
+ "options": [
3136
+ [
3137
+ "r",
3138
+ "remote",
3139
+ "show log of a remote component"
3140
+ ],
3141
+ [
3142
+ "",
3143
+ "parents",
3144
+ "EXPERIMENTAL. show parents and lanes data"
3145
+ ],
3146
+ [
3147
+ "j",
3148
+ "json",
3149
+ "json format"
3150
+ ]
3151
+ ],
3152
+ "description": "show components(s) version history",
3153
+ "extendedDescription": "https://bit.dev/docs/reference/cli-reference#log",
3154
+ "group": "info",
3155
+ "private": false,
3156
+ "remoteOp": true,
3157
+ "skipWorkspace": true,
3158
+ "arguments": [
2693
3159
  {
2694
- "name": "diff [values...]",
2695
- "alias": "",
2696
- "options": [],
2697
- "description": "show diff between lanes",
2698
- "extendedDescription": "bit lane diff => diff between the current lane and default lane. (only inside workspace).\nbit lane diff to => diff between the current lane (or default-lane when in scope) and \"to\" lane.\nbit lane diff from to => diff between \"from\" lane and \"to\" lane.",
2699
- "group": "ungrouped",
2700
- "private": true,
2701
- "remoteOp": true,
2702
- "skipWorkspace": true
2703
- },
3160
+ "name": "id",
3161
+ "description": "component-id or component-name"
3162
+ }
3163
+ ]
3164
+ },
3165
+ {
3166
+ "name": "deprecate <component-name>",
3167
+ "alias": "d",
3168
+ "options": [
3169
+ [
3170
+ "",
3171
+ "new-id <string>",
3172
+ "if replaced by another component, enter the new component id"
3173
+ ]
3174
+ ],
3175
+ "description": "deprecate a component",
3176
+ "extendedDescription": "",
3177
+ "group": "collaborate",
3178
+ "private": false,
3179
+ "remoteOp": true,
3180
+ "skipWorkspace": true,
3181
+ "arguments": [
2704
3182
  {
2705
- "name": "add-readme <componentId> [laneName]",
2706
- "alias": "",
2707
- "options": [],
2708
- "description": "EXPERIMENTAL. add lane readme component",
2709
- "extendedDescription": "",
2710
- "group": "ungrouped",
2711
- "private": true,
2712
- "skipWorkspace": false
2713
- },
3183
+ "name": "component-name",
3184
+ "description": "component name or component id"
3185
+ }
3186
+ ]
3187
+ },
3188
+ {
3189
+ "name": "undeprecate <id>",
3190
+ "alias": "",
3191
+ "options": [],
3192
+ "description": "undeprecate a deprecated component (local/remote)",
3193
+ "extendedDescription": "",
3194
+ "group": "collaborate",
3195
+ "private": false,
3196
+ "remoteOp": true,
3197
+ "skipWorkspace": true
3198
+ },
3199
+ {
3200
+ "name": "rename <current-name> <new-name>",
3201
+ "alias": "",
3202
+ "options": [
3203
+ [
3204
+ "s",
3205
+ "scope <scope-name>",
3206
+ "default scope for the newly created component"
3207
+ ],
3208
+ [
3209
+ "p",
3210
+ "path <relative-path>",
3211
+ "relative path in the workspace. by default the path is `<scope>/<namespace>/<name>`"
3212
+ ],
3213
+ [
3214
+ "r",
3215
+ "refactor",
3216
+ "update the import/require statements in all dependent components (in the same workspace)"
3217
+ ]
3218
+ ],
3219
+ "description": "EXPERIMENTAL. rename component. if tagged/exported, create a new component and deprecate the original component",
3220
+ "extendedDescription": "",
3221
+ "group": "collaborate",
3222
+ "private": false,
3223
+ "remoteOp": true,
3224
+ "skipWorkspace": true,
3225
+ "arguments": [
2714
3226
  {
2715
- "name": "remove-readme [laneName]",
2716
- "alias": "",
2717
- "options": [],
2718
- "description": "EXPERIMENTAL. remove lane readme component",
2719
- "extendedDescription": "",
2720
- "group": "ungrouped",
2721
- "private": true,
2722
- "skipWorkspace": false
3227
+ "name": "current-name",
3228
+ "description": "the current component name (without its scope name)"
2723
3229
  },
2724
3230
  {
2725
- "name": "import <lane>",
2726
- "alias": "",
2727
- "options": [
2728
- [
2729
- "",
2730
- "skip-dependency-installation",
2731
- "do not install packages of the imported components"
2732
- ]
2733
- ],
2734
- "description": "import a remote lane to your workspace",
2735
- "extendedDescription": "",
2736
- "group": "ungrouped",
2737
- "private": true
3231
+ "name": "new-name",
3232
+ "description": "the new component name (without its scope name)"
2738
3233
  }
2739
3234
  ]
2740
3235
  },
2741
3236
  {
2742
- "name": "switch <lane>",
3237
+ "name": "fork <source-component-id> [target-component-name]",
2743
3238
  "alias": "",
2744
3239
  "options": [
2745
3240
  [
2746
- "n",
2747
- "alias <string>",
2748
- "relevant when the specified lane is a remote late. name a local lane differently than the remote lane"
3241
+ "s",
3242
+ "scope <string>",
3243
+ "default scope for the new component"
2749
3244
  ],
2750
3245
  [
2751
- "m",
2752
- "merge [strategy]",
2753
- "merge local changes with the checked out version. strategy should be \"theirs\", \"ours\" or \"manual\""
3246
+ "p",
3247
+ "path <string>",
3248
+ "relative path in the workspace for the new component. by default the path is `<scope>/<namespace>/<name>`"
2754
3249
  ],
2755
3250
  [
2756
- "a",
2757
- "get-all",
2758
- "checkout all components in a lane include ones that do not exist in the workspace"
3251
+ "r",
3252
+ "refactor",
3253
+ "update the import/require statements in all dependent components (in the same workspace)"
2759
3254
  ],
2760
3255
  [
2761
3256
  "",
2762
3257
  "skip-dependency-installation",
2763
3258
  "do not install packages of the imported components"
2764
- ],
2765
- [
2766
- "j",
2767
- "json",
2768
- "return the output as JSON"
2769
3259
  ]
2770
3260
  ],
2771
- "description": "switch to the specified lane",
3261
+ "description": "EXPERIMENTAL. create a new component out of an existing one (copies source files and config)",
2772
3262
  "extendedDescription": "",
2773
- "group": "ungrouped",
2774
- "private": true
3263
+ "group": "collaborate",
3264
+ "private": false,
3265
+ "remoteOp": true,
3266
+ "skipWorkspace": true,
3267
+ "arguments": [
3268
+ {
3269
+ "name": "source-component-id",
3270
+ "description": "the component id of the source component"
3271
+ },
3272
+ {
3273
+ "name": "target-component-name",
3274
+ "description": "the name for the new component (component name without scope). to set a different scope, use the '--scope' flag"
3275
+ }
3276
+ ]
2775
3277
  },
2776
3278
  {
2777
- "name": "eject <pattern>",
3279
+ "name": "eject <component-pattern>",
2778
3280
  "alias": "E",
2779
3281
  "options": [
2780
3282
  [
@@ -2793,10 +3295,16 @@
2793
3295
  "keep the component files in the workspace intact"
2794
3296
  ]
2795
3297
  ],
2796
- "description": "replaces the components from the local scope with the corresponding packages",
2797
- "extendedDescription": "you can use a `<pattern>` for multiple component ids, such as `bit eject \"org.scope/utils/**\"`. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nalways wrap the pattern with quotes to avoid collision with shell commands.\nto validate the pattern before running this command, run `bit pattern <pattern>`.\n",
3298
+ "description": "replace components maintained in the workspace with their corresponding packages",
3299
+ "extendedDescription": "",
2798
3300
  "group": "development",
2799
- "private": false
3301
+ "private": false,
3302
+ "arguments": [
3303
+ {
3304
+ "name": "component-pattern",
3305
+ "description": "component name, component id, or component pattern.\nuse component pattern to select multiple components. use comma to separate patterns and \"!\" to exclude. e.g. \"ui/**, !ui/button\"\nwrap the pattern with quotes"
3306
+ }
3307
+ ]
2800
3308
  },
2801
3309
  {
2802
3310
  "name": "resume-export <export-id> <remotes...>",
@@ -2809,48 +3317,28 @@
2809
3317
  "remoteOp": true
2810
3318
  },
2811
3319
  {
2812
- "name": "export [remote] [id...]",
3320
+ "name": "export [component-patterns...]",
2813
3321
  "alias": "e",
2814
3322
  "options": [
2815
3323
  [
2816
3324
  "e",
2817
3325
  "eject",
2818
- "replaces the exported components from the local scope with the corresponding packages"
3326
+ "replace the exported components with their corresponding packages (to use these components without further maintaining them)"
2819
3327
  ],
2820
3328
  [
2821
3329
  "a",
2822
3330
  "all",
2823
- "export all components include non-staged"
2824
- ],
2825
- [
2826
- "d",
2827
- "include-dependencies",
2828
- "LEGACY ONLY. include the component's dependencies as part of the export to the remote scope"
2829
- ],
2830
- [
2831
- "s",
2832
- "set-current-scope",
2833
- "LEGACY ONLY. ensure the component's remote scope is set according to the target location"
2834
- ],
2835
- [
2836
- "r",
2837
- "rewire",
2838
- "LEGACY ONLY. when exporting to a different or new scope, replace import/require statements in the source code to match the new scope"
2839
- ],
2840
- [
2841
- "f",
2842
- "force",
2843
- "force changing a component remote without asking for a confirmation"
3331
+ "export all components, including non-staged (useful when components in the remote scope are corrupted or missing)"
2844
3332
  ],
2845
3333
  [
2846
3334
  "",
2847
3335
  "all-versions",
2848
- "export not only staged versions but all of them"
3336
+ "export not only staged versions but all of them (useful when versions in the remote scope are corrupted or missing)"
2849
3337
  ],
2850
3338
  [
2851
3339
  "",
2852
3340
  "origin-directly",
2853
- "HARMONY ONLY. avoid export to the central hub, instead, export directly to the original scopes. not recommended!"
3341
+ "EXPERIMENTAL. avoid export to the central hub, instead, export directly to the original scopes. not recommended!"
2854
3342
  ],
2855
3343
  [
2856
3344
  "",
@@ -2868,11 +3356,17 @@
2868
3356
  "show output in json format"
2869
3357
  ]
2870
3358
  ],
2871
- "description": "Export components to a remote scope",
2872
- "extendedDescription": "bit export => export all staged components to their current scope, if checked out to a lane, export the lane as well\n`bit export [id...]` => export the given ids to their current scope\n\nhttps://bit.dev/docs/components/exporting-components\nyou can use a pattern for multiple ids, such as bit export remote-scope \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
3359
+ "description": "export components from the workspace to remote scopes",
3360
+ "extendedDescription": "bit export => export all staged components to their current scope, if checked out to a lane, export the lane as well\n `bit export [id...]` => export the given ids to their current scope\n you can use a pattern for multiple ids, such as bit export remote-scope \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
2873
3361
  "group": "collaborate",
2874
3362
  "private": false,
2875
- "remoteOp": true
3363
+ "remoteOp": true,
3364
+ "arguments": [
3365
+ {
3366
+ "name": "component-patterns...",
3367
+ "description": "component IDs, component names, or component patterns (separated by space). Use patterns to export groups of components using a common scope or namespace. E.g., \"utils/*\" (wrap with double quotes)"
3368
+ }
3369
+ ]
2876
3370
  },
2877
3371
  {
2878
3372
  "name": "update-dependencies <data>",