@teambit/harmony.content.cli-reference 1.95.106 → 1.95.108

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.
@@ -694,6 +694,21 @@
694
694
  "group": "general",
695
695
  "private": false
696
696
  },
697
+ {
698
+ "name": "globals",
699
+ "alias": "",
700
+ "options": [
701
+ [
702
+ "j",
703
+ "json",
704
+ "json format"
705
+ ]
706
+ ],
707
+ "description": "list all globals",
708
+ "extendedDescription": "",
709
+ "group": "workspace",
710
+ "private": false
711
+ },
697
712
  {
698
713
  "name": "show <component-name>",
699
714
  "alias": "",
@@ -751,7 +766,13 @@
751
766
  {
752
767
  "name": "get <component-name>",
753
768
  "alias": "",
754
- "options": [],
769
+ "options": [
770
+ [
771
+ "",
772
+ "services <string>",
773
+ "show information about the specific services only. for multiple services, separate by a comma and wrap with quotes"
774
+ ]
775
+ ],
755
776
  "description": "show information about a component's env",
756
777
  "extendedDescription": "",
757
778
  "group": "development",
@@ -827,24 +848,39 @@
827
848
  "description": "components configured to use the 'aspect' env will be configured to use the 'node' env, instead"
828
849
  }
829
850
  ]
851
+ },
852
+ {
853
+ "name": "update [env-id] [pattern]",
854
+ "options": [],
855
+ "description": "update a version of an env for all components using that env",
856
+ "group": "development",
857
+ "arguments": [
858
+ {
859
+ "name": "env-id",
860
+ "description": "the environment id (defaults to all envs). optionally, add a version (id@version), otherwise, it finds the latest version on the remote."
861
+ },
862
+ {
863
+ "name": "pattern",
864
+ "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"
865
+ }
866
+ ],
867
+ "examples": [
868
+ {
869
+ "cmd": "envs update",
870
+ "description": "update all envs in the workspace to their latest version"
871
+ },
872
+ {
873
+ "cmd": "envs update scope.org/env '**/ui/**'",
874
+ "description": "update \"ui\" components that use scope.org/env to use its latest version"
875
+ },
876
+ {
877
+ "cmd": "envs update scope.org/env@2.0.0",
878
+ "description": "update all components that use scope.org/env to version 2.0.0 (of this env)."
879
+ }
880
+ ]
830
881
  }
831
882
  ]
832
883
  },
833
- {
834
- "name": "globals",
835
- "alias": "",
836
- "options": [
837
- [
838
- "j",
839
- "json",
840
- "json format"
841
- ]
842
- ],
843
- "description": "list all globals",
844
- "extendedDescription": "",
845
- "group": "workspace",
846
- "private": false
847
- },
848
884
  {
849
885
  "name": "start [type] [pattern]",
850
886
  "alias": "c",
@@ -1186,131 +1222,192 @@
1186
1222
  ]
1187
1223
  },
1188
1224
  {
1189
- "name": "checkout <to> [component-pattern]",
1190
- "alias": "U",
1225
+ "name": "create <template-name> <component-names...>",
1226
+ "alias": "",
1191
1227
  "options": [
1192
1228
  [
1193
- "i",
1194
- "interactive-merge",
1195
- "when a component is modified and the merge process found conflicts, display options to resolve them"
1229
+ "n",
1230
+ "namespace <string>",
1231
+ "sets the component's namespace and nested dirs inside the scope"
1196
1232
  ],
1197
1233
  [
1198
- "o",
1199
- "ours",
1200
- "in case of a conflict, override the used version with the current modification"
1234
+ "s",
1235
+ "scope <string>",
1236
+ "sets the component's scope-name. if not entered, the default-scope will be used"
1201
1237
  ],
1202
1238
  [
1203
- "t",
1204
- "theirs",
1205
- "in case of a conflict, override the current modification with the specified version"
1239
+ "a",
1240
+ "aspect <string>",
1241
+ "aspect-id of the template. helpful when multiple aspects use the same template name"
1206
1242
  ],
1207
1243
  [
1208
- "m",
1209
- "manual",
1210
- "in case of a conflict, leave the files with a conflict state to resolve them manually later"
1244
+ "p",
1245
+ "path <string>",
1246
+ "relative path in the workspace. by default the path is `<scope>/<namespace>/<name>`"
1211
1247
  ],
1212
1248
  [
1213
- "r",
1214
- "reset",
1215
- "revert changes that were not snapped/tagged"
1249
+ "e",
1250
+ "env <string>",
1251
+ "set the component's environment. (overrides the env from variants and the template)"
1252
+ ]
1253
+ ],
1254
+ "description": "create a new component (source files and config) using a template.",
1255
+ "extendedDescription": "",
1256
+ "group": "development",
1257
+ "private": false,
1258
+ "arguments": [
1259
+ {
1260
+ "name": "template-name",
1261
+ "description": "the template for generating the component \n(run 'bit templates' for a list of available templates)"
1262
+ },
1263
+ {
1264
+ "name": "component-names...",
1265
+ "description": "a list of component names to generate"
1266
+ }
1267
+ ],
1268
+ "examples": [
1269
+ {
1270
+ "cmd": "bit create react ui/button",
1271
+ "description": "creates a component named 'ui/button' using the 'react' template"
1272
+ },
1273
+ {
1274
+ "cmd": "bit create react ui/button pages/register",
1275
+ "description": "creates two components, 'ui/button' and 'pages/register', using the 'react' template"
1276
+ },
1277
+ {
1278
+ "cmd": "bit create react ui/button --scope my-org.my-scope",
1279
+ "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`."
1280
+ },
1281
+ {
1282
+ "cmd": "bit create react ui/button --env teambit.community/envs/community-react@1.95.13",
1283
+ "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')."
1284
+ }
1285
+ ]
1286
+ },
1287
+ {
1288
+ "name": "templates",
1289
+ "alias": "",
1290
+ "options": [
1291
+ [
1292
+ "s",
1293
+ "show-all",
1294
+ "show hidden templates"
1216
1295
  ],
1217
1296
  [
1218
1297
  "a",
1219
- "all",
1220
- "all components"
1221
- ],
1298
+ "aspect <aspect-id>",
1299
+ "show templates provided by the aspect-id"
1300
+ ]
1301
+ ],
1302
+ "description": "list templates for \"bit create\" and \"bit new\"",
1303
+ "extendedDescription": "list components templates when inside bit-workspace (for bit-create), otherwise, list workspace templates (for bit-new)",
1304
+ "group": "development",
1305
+ "private": false
1306
+ },
1307
+ {
1308
+ "name": "new <template-name> <workspace-name>",
1309
+ "alias": "",
1310
+ "options": [
1222
1311
  [
1223
- "e",
1224
- "entire-lane",
1225
- "write also new components that were introduced on the remote lane and do not exist locally"
1312
+ "a",
1313
+ "aspect <aspect-id>",
1314
+ "aspect-id of the template. mandatory for non-core aspects. helpful for core aspects in case of a name collision"
1226
1315
  ],
1227
1316
  [
1228
- "v",
1229
- "verbose",
1230
- "showing verbose output for inspection"
1317
+ "d",
1318
+ "default-scope <scope-name>",
1319
+ "set defaultScope in the new workspace.jsonc"
1231
1320
  ],
1232
1321
  [
1233
1322
  "",
1234
- "reset",
1235
- "DEPRECATED. run \"bit checkout reset\" instead"
1323
+ "standalone",
1324
+ "DEPRECATED. use --skip-git instead"
1236
1325
  ],
1237
1326
  [
1238
- "",
1239
- "skip-npm-install",
1240
- "DEPRECATED. use \"--skip-dependency-installation\" instead"
1327
+ "s",
1328
+ "skip-git",
1329
+ "skip generation of Git repository"
1330
+ ],
1331
+ [
1332
+ "e",
1333
+ "empty",
1334
+ "empty workspace with no components (relevant for templates that add components by default)"
1241
1335
  ],
1242
1336
  [
1243
1337
  "",
1244
- "skip-dependency-installation",
1245
- "do not install packages of the imported components"
1338
+ "load-from <path-to-template>",
1339
+ "path to the workspace containing the template. helpful during a development of a workspace-template"
1246
1340
  ]
1247
1341
  ],
1248
- "description": "switch between component versions or remove local changes",
1249
- "extendedDescription": "\n `bit checkout <version> [component-pattern]` => checkout the specified ids (or all components when --all is used) to the specified version\n `bit checkout head [component-pattern]` => checkout to the last snap/tag, omit [component-pattern] to checkout head for all\n `bit checkout latest [component-pattern]` => checkout to the latest satisfying semver tag, omit [component-pattern] to checkout latest for all\n `bit checkout reset [component-pattern]` => remove local modifications from the specified ids (or all components when --all is used)",
1250
- "group": "development",
1342
+ "description": "create a new workspace from a template",
1343
+ "extendedDescription": "",
1344
+ "group": "start",
1251
1345
  "private": false,
1252
1346
  "arguments": [
1253
1347
  {
1254
- "name": "to",
1255
- "description": "permitted values: [head, latest, reset, specific-version]. 'head' - last snap/tag. 'latest' - semver latest tag. 'reset' - removes local changes"
1348
+ "name": "template-name",
1349
+ "description": "the name of the workspace template (run 'bit templates', outside of a workspace, to get a list of available templates)"
1256
1350
  },
1257
1351
  {
1258
- "name": "component-pattern",
1259
- "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"
1352
+ "name": "workspace-name",
1353
+ "description": "the name for the new workspace and workspace directory"
1260
1354
  }
1261
1355
  ]
1262
1356
  },
1263
1357
  {
1264
- "name": "remove <component-pattern>",
1265
- "alias": "rm",
1358
+ "name": "build [component-pattern]",
1359
+ "alias": "",
1266
1360
  "options": [
1267
1361
  [
1268
- "",
1269
- "soft",
1270
- "EXPERIMENTAL. mark the component as deleted. after tag/snap and export the remote will be updated"
1362
+ "a",
1363
+ "all",
1364
+ "DEPRECATED. use --unmodified"
1271
1365
  ],
1272
1366
  [
1273
- "r",
1274
- "remote",
1275
- "remove a component completely from a remote scope (Careful! this is a permanent change. prefer --soft and tag+export)"
1367
+ "u",
1368
+ "unmodified",
1369
+ "include unmodified components (by default, only new and modified components are built)"
1370
+ ],
1371
+ [
1372
+ "d",
1373
+ "dev",
1374
+ "run the pipeline in dev mode"
1276
1375
  ],
1277
1376
  [
1278
1377
  "",
1279
- "from-lane",
1280
- "revert to main if exists on currently checked out lane, otherwise, remove it"
1378
+ "install",
1379
+ "install core aspects in capsules"
1281
1380
  ],
1282
1381
  [
1283
- "t",
1284
- "track",
1285
- "keep tracking component in .bitmap (default = false), helps transform a tagged-component to new"
1382
+ "",
1383
+ "reuse-capsules",
1384
+ "avoid deleting the capsules root-dir before starting the build"
1286
1385
  ],
1287
1386
  [
1288
- "d",
1289
- "delete-files",
1290
- "DEPRECATED (this is now the default). delete local component files"
1387
+ "",
1388
+ "tasks <string>",
1389
+ "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)"
1291
1390
  ],
1292
1391
  [
1293
1392
  "",
1294
- "keep-files",
1295
- "keep component files (just untrack the component)"
1393
+ "cache-packages-on-capsule-root",
1394
+ "set the package-manager cache on the capsule root"
1296
1395
  ],
1297
1396
  [
1298
- "f",
1299
- "force",
1300
- "removes the component from the scope, even if used as a dependency. WARNING: components that depend on this component will corrupt"
1397
+ "",
1398
+ "list-tasks <string>",
1399
+ "list tasks of an env or a component-id for each one of the pipelines: build, tag and snap"
1301
1400
  ],
1302
1401
  [
1303
- "s",
1304
- "silent",
1305
- "skip confirmation"
1402
+ "",
1403
+ "skip-tests",
1404
+ "skip running component tests during tag process"
1306
1405
  ]
1307
1406
  ],
1308
- "description": "remove component(s) from the workspace, or a remote scope",
1407
+ "description": "run set of tasks for build",
1309
1408
  "extendedDescription": "",
1310
- "group": "collaborate",
1409
+ "group": "development",
1311
1410
  "private": false,
1312
- "remoteOp": true,
1313
- "skipWorkspace": true,
1314
1411
  "arguments": [
1315
1412
  {
1316
1413
  "name": "component-pattern",
@@ -1319,64 +1416,74 @@
1319
1416
  ]
1320
1417
  },
1321
1418
  {
1322
- "name": "resume-export <export-id> <remotes...>",
1419
+ "name": "artifacts <component-pattern>",
1323
1420
  "alias": "",
1324
- "options": [],
1325
- "description": "EXPERIMENTAL. resume failed export",
1326
- "extendedDescription": "resume failed export to persist the pending objects on the given remotes.\nthe export-id is the id the client got in the error message during the failure.\nalternatively, exporting to any one of the failed scopes, throws server-is-busy error with the export-id",
1327
- "group": "collaborate",
1328
- "private": true,
1329
- "remoteOp": true
1330
- },
1331
- {
1332
- "name": "export [component-patterns...]",
1333
- "alias": "e",
1334
1421
  "options": [
1335
1422
  [
1336
- "e",
1337
- "eject",
1338
- "replace the exported components with their corresponding packages (to use these components without further maintaining them)"
1339
- ],
1340
- [
1341
- "a",
1342
- "all",
1343
- "export all components, including non-staged (useful when components in the remote scope are corrupted or missing)"
1423
+ "",
1424
+ "aspect <aspect-id>",
1425
+ "show/download only artifacts generated by this aspect-id"
1344
1426
  ],
1345
1427
  [
1346
1428
  "",
1347
- "all-versions",
1348
- "export not only staged versions but all of them (useful when versions in the remote scope are corrupted or missing)"
1429
+ "task <task-id>",
1430
+ "show/download only artifacts generated by this task-id"
1349
1431
  ],
1350
1432
  [
1351
1433
  "",
1352
- "origin-directly",
1353
- "EXPERIMENTAL. avoid export to the central hub, instead, export directly to the original scopes. not recommended!"
1434
+ "files <glob>",
1435
+ "show/download only artifacts matching the given files or the glob pattern (wrap glob patterns in quotes)"
1354
1436
  ],
1355
1437
  [
1356
1438
  "",
1357
- "resume <string>",
1358
- "in case the previous export failed and suggested to resume with an export-id, enter the id"
1439
+ "out-dir <string>",
1440
+ "download the files to the specified dir"
1441
+ ]
1442
+ ],
1443
+ "description": "list and download components artifacts",
1444
+ "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",
1445
+ "group": "development",
1446
+ "private": false,
1447
+ "arguments": [
1448
+ {
1449
+ "name": "component-pattern",
1450
+ "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"
1451
+ }
1452
+ ]
1453
+ },
1454
+ {
1455
+ "name": "compile [component-names...]",
1456
+ "alias": "",
1457
+ "options": [
1458
+ [
1459
+ "c",
1460
+ "changed",
1461
+ "compile only new and modified components"
1359
1462
  ],
1360
1463
  [
1361
- "",
1362
- "ignore-missing-artifacts",
1363
- "EXPERIMENTAL. don't throw an error when artifact files are missing. not recommended, unless you're sure the artifacts are in the remote"
1464
+ "v",
1465
+ "verbose",
1466
+ "show more data, such as, dist paths"
1364
1467
  ],
1365
1468
  [
1366
1469
  "j",
1367
1470
  "json",
1368
- "show output in json format"
1471
+ "return the compile results in json format"
1472
+ ],
1473
+ [
1474
+ "d",
1475
+ "delete-dist-dir",
1476
+ "delete existing dist folder before writing new compiled files"
1369
1477
  ]
1370
1478
  ],
1371
- "description": "export components from the workspace to remote scopes",
1372
- "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)",
1373
- "group": "collaborate",
1479
+ "description": "compile components in the workspace",
1480
+ "extendedDescription": "",
1481
+ "group": "development",
1374
1482
  "private": false,
1375
- "remoteOp": true,
1376
1483
  "arguments": [
1377
1484
  {
1378
- "name": "component-patterns...",
1379
- "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)"
1485
+ "name": "component-names...",
1486
+ "description": "a list of component names or component IDs (defaults to all components)"
1380
1487
  }
1381
1488
  ]
1382
1489
  },
@@ -1396,309 +1503,252 @@
1396
1503
  "private": true
1397
1504
  },
1398
1505
  {
1399
- "name": "import [component-patterns...]",
1400
- "alias": "",
1506
+ "name": "install [packages...]",
1507
+ "alias": "in",
1401
1508
  "options": [
1402
- [
1403
- "p",
1404
- "path <path>",
1405
- "import components into a specific directory (a relative path in the workspace)"
1406
- ],
1407
- [
1408
- "o",
1409
- "objects",
1410
- "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"
1411
- ],
1412
- [
1413
- "d",
1414
- "display-dependencies",
1415
- "display the imported dependencies"
1416
- ],
1417
- [
1418
- "O",
1419
- "override",
1420
- "override local changes"
1421
- ],
1422
1509
  [
1423
1510
  "v",
1424
- "verbose",
1425
- "show verbose output for inspection"
1426
- ],
1427
- [
1428
- "j",
1429
- "json",
1430
- "return the output as JSON"
1431
- ],
1432
- [
1433
- "",
1434
- "skip-npm-install",
1435
- "DEPRECATED. use \"--skip-dependency-installation\" instead"
1511
+ "variants <variants>",
1512
+ "add packages to specific variants"
1436
1513
  ],
1437
1514
  [
1438
- "",
1439
- "skip-dependency-installation",
1440
- "do not install packages of the imported components"
1515
+ "t",
1516
+ "type [lifecycleType]",
1517
+ "\"runtime\" (default) or \"peer\" (dev is not a valid option)"
1441
1518
  ],
1442
1519
  [
1443
- "m",
1444
- "merge [strategy]",
1445
- "merge local changes with the imported version. strategy should be \"theirs\", \"ours\" or \"manual\""
1520
+ "u",
1521
+ "update-existing [updateExisting]",
1522
+ "update existing dependencies version and types"
1446
1523
  ],
1447
1524
  [
1448
1525
  "",
1449
- "dependencies",
1450
- "EXPERIMENTAL. import all dependencies and write them to the workspace"
1526
+ "save-prefix [savePrefix]",
1527
+ "set the prefix to use when adding dependency to workspace.jsonc"
1451
1528
  ],
1452
1529
  [
1453
1530
  "",
1454
- "dependents",
1455
- "EXPERIMENTAL. import components found while traversing from the given ids upwards to the workspace components"
1531
+ "skip-dedupe [skipDedupe]",
1532
+ "do not dedupe dependencies on installation"
1456
1533
  ],
1457
1534
  [
1458
1535
  "",
1459
- "save-in-lane",
1460
- "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)"
1536
+ "skip-import [skipImport]",
1537
+ "do not import bit objects post installation"
1461
1538
  ],
1462
1539
  [
1463
1540
  "",
1464
- "all-history",
1465
- "relevant for fetching all components objects. avoid optimizations, fetch all history versions, always"
1541
+ "skip-compile [skipCompile]",
1542
+ "do not compile components"
1466
1543
  ],
1467
1544
  [
1468
1545
  "",
1469
- "fetch-deps",
1470
- "fetch dependencies objects"
1546
+ "add-missing-peers [addMissingPeers]",
1547
+ "install all missing peer dependencies"
1471
1548
  ]
1472
1549
  ],
1473
- "description": "import components from their remote scopes to the local workspace",
1474
- "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)",
1475
- "group": "collaborate",
1550
+ "description": "installs workspace dependencies",
1551
+ "extendedDescription": "when no package is specified, all workspace dependencies are installed and all workspace components are imported.",
1552
+ "group": "development",
1476
1553
  "private": false,
1477
- "remoteOp": true,
1478
1554
  "arguments": [
1479
1555
  {
1480
- "name": "component-patterns...",
1481
- "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)"
1556
+ "name": "packages...",
1557
+ "description": "a list of packages to install (separated by spaces)"
1482
1558
  }
1483
1559
  ]
1484
1560
  },
1485
1561
  {
1486
- "name": "fetch [ids...]",
1487
- "alias": "",
1562
+ "name": "uninstall [packages...]",
1563
+ "alias": "un",
1564
+ "options": [],
1565
+ "description": "uninstall dependencies",
1566
+ "extendedDescription": "",
1567
+ "group": "development",
1568
+ "private": false
1569
+ },
1570
+ {
1571
+ "name": "update",
1572
+ "alias": "up",
1488
1573
  "options": [
1489
1574
  [
1490
- "l",
1491
- "lanes",
1492
- "EXPERIMENTAL. fetch component objects from lanes. note, it does not save the remote lanes objects locally, only the refs"
1493
- ],
1494
- [
1495
- "c",
1496
- "components",
1497
- "fetch components"
1498
- ],
1499
- [
1500
- "j",
1501
- "json",
1502
- "return the output as JSON"
1503
- ],
1504
- [
1505
- "",
1506
- "from-original-scopes",
1507
- "fetch indirect dependencies from their original scope as opposed to from their dependents"
1575
+ "y",
1576
+ "yes",
1577
+ "automatically update all outdated packages"
1508
1578
  ]
1509
1579
  ],
1510
- "description": "fetch remote objects and store locally",
1511
- "extendedDescription": "for lanes, use \"/\" as a separator between the remote and the lane name, e.g. teambit.ui/fix-button",
1512
- "group": "ungrouped",
1513
- "private": true
1580
+ "description": "update dependencies",
1581
+ "extendedDescription": "",
1582
+ "group": "development",
1583
+ "private": false
1514
1584
  },
1515
1585
  {
1516
- "name": "create <template-name> <component-names...>",
1586
+ "name": "link [component-names...]",
1517
1587
  "alias": "",
1518
1588
  "options": [
1519
1589
  [
1520
- "n",
1521
- "namespace <string>",
1522
- "sets the component's namespace and nested dirs inside the scope"
1590
+ "j",
1591
+ "json",
1592
+ "return the output as JSON"
1523
1593
  ],
1524
1594
  [
1525
- "s",
1526
- "scope <string>",
1527
- "sets the component's scope-name. if not entered, the default-scope will be used"
1595
+ "",
1596
+ "verbose",
1597
+ "verbose output"
1528
1598
  ],
1529
1599
  [
1530
- "a",
1531
- "aspect <string>",
1532
- "aspect-id of the template. helpful when multiple aspects use the same template name"
1600
+ "r",
1601
+ "rewire",
1602
+ "Replace relative paths with module paths in code (e.g. \"../foo\" => \"@bit/foo\")"
1533
1603
  ],
1534
1604
  [
1535
- "p",
1536
- "path <string>",
1537
- "relative path in the workspace. by default the path is `<scope>/<namespace>/<name>`"
1605
+ "",
1606
+ "target <dir>",
1607
+ "EXPERIMENTAL. link to an external directory (similar to npm-link) so other projects could use these components"
1538
1608
  ],
1539
1609
  [
1540
- "e",
1541
- "env <string>",
1542
- "set the component's environment. (overrides the env from variants and the template)"
1610
+ "",
1611
+ "skip-fetching-objects",
1612
+ "skip fetch missing objects from remotes before linking"
1543
1613
  ]
1544
1614
  ],
1545
- "description": "create a new component (source files and config) using a template.",
1546
- "extendedDescription": "",
1615
+ "description": "create links in the node_modules directory, to core aspects and to components in the workspace",
1616
+ "extendedDescription": "https://bit.dev/docs/workspace/component-links",
1547
1617
  "group": "development",
1548
1618
  "private": false,
1549
1619
  "arguments": [
1550
- {
1551
- "name": "template-name",
1552
- "description": "the template for generating the component \n(run 'bit templates' for a list of available templates)"
1553
- },
1554
1620
  {
1555
1621
  "name": "component-names...",
1556
- "description": "a list of component names to generate"
1557
- }
1558
- ],
1559
- "examples": [
1560
- {
1561
- "cmd": "bit create react ui/button",
1562
- "description": "creates a component named 'ui/button' using the 'react' template"
1563
- },
1564
- {
1565
- "cmd": "bit create react ui/button pages/register",
1566
- "description": "creates two components, 'ui/button' and 'pages/register', using the 'react' template"
1567
- },
1568
- {
1569
- "cmd": "bit create react ui/button --scope my-org.my-scope",
1570
- "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`."
1571
- },
1572
- {
1573
- "cmd": "bit create react ui/button --env teambit.community/envs/community-react@1.95.13",
1574
- "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')."
1622
+ "description": "names or IDs of the components to link"
1575
1623
  }
1576
1624
  ]
1577
1625
  },
1578
1626
  {
1579
- "name": "templates",
1580
- "alias": "",
1627
+ "name": "checkout <to> [component-pattern]",
1628
+ "alias": "U",
1581
1629
  "options": [
1582
1630
  [
1583
- "s",
1584
- "show-all",
1585
- "show hidden templates"
1631
+ "i",
1632
+ "interactive-merge",
1633
+ "when a component is modified and the merge process found conflicts, display options to resolve them"
1586
1634
  ],
1587
1635
  [
1588
- "a",
1589
- "aspect <aspect-id>",
1590
- "show templates provided by the aspect-id"
1591
- ]
1592
- ],
1593
- "description": "list templates for \"bit create\" and \"bit new\"",
1594
- "extendedDescription": "list components templates when inside bit-workspace (for bit-create), otherwise, list workspace templates (for bit-new)",
1595
- "group": "development",
1596
- "private": false
1597
- },
1598
- {
1599
- "name": "new <template-name> <workspace-name>",
1600
- "alias": "",
1601
- "options": [
1636
+ "o",
1637
+ "ours",
1638
+ "in case of a conflict, override the used version with the current modification"
1639
+ ],
1602
1640
  [
1603
- "a",
1604
- "aspect <aspect-id>",
1605
- "aspect-id of the template. mandatory for non-core aspects. helpful for core aspects in case of a name collision"
1641
+ "t",
1642
+ "theirs",
1643
+ "in case of a conflict, override the current modification with the specified version"
1606
1644
  ],
1607
1645
  [
1608
- "d",
1609
- "default-scope <scope-name>",
1610
- "set defaultScope in the new workspace.jsonc"
1646
+ "m",
1647
+ "manual",
1648
+ "in case of a conflict, leave the files with a conflict state to resolve them manually later"
1611
1649
  ],
1612
1650
  [
1613
- "",
1614
- "standalone",
1615
- "DEPRECATED. use --skip-git instead"
1651
+ "r",
1652
+ "reset",
1653
+ "revert changes that were not snapped/tagged"
1616
1654
  ],
1617
1655
  [
1618
- "s",
1619
- "skip-git",
1620
- "skip generation of Git repository"
1656
+ "a",
1657
+ "all",
1658
+ "all components"
1621
1659
  ],
1622
1660
  [
1623
1661
  "e",
1624
- "empty",
1625
- "empty workspace with no components (relevant for templates that add components by default)"
1662
+ "entire-lane",
1663
+ "write also new components that were introduced on the remote lane and do not exist locally"
1664
+ ],
1665
+ [
1666
+ "v",
1667
+ "verbose",
1668
+ "showing verbose output for inspection"
1626
1669
  ],
1627
1670
  [
1628
1671
  "",
1629
- "load-from <path-to-template>",
1630
- "path to the workspace containing the template. helpful during a development of a workspace-template"
1672
+ "reset",
1673
+ "DEPRECATED. run \"bit checkout reset\" instead"
1674
+ ],
1675
+ [
1676
+ "",
1677
+ "skip-npm-install",
1678
+ "DEPRECATED. use \"--skip-dependency-installation\" instead"
1679
+ ],
1680
+ [
1681
+ "",
1682
+ "skip-dependency-installation",
1683
+ "do not install packages of the imported components"
1631
1684
  ]
1632
1685
  ],
1633
- "description": "create a new workspace from a template",
1634
- "extendedDescription": "",
1635
- "group": "start",
1686
+ "description": "switch between component versions or remove local changes",
1687
+ "extendedDescription": "\n `bit checkout <version> [component-pattern]` => checkout the specified ids (or all components when --all is used) to the specified version\n `bit checkout head [component-pattern]` => checkout to the last snap/tag, omit [component-pattern] to checkout head for all\n `bit checkout latest [component-pattern]` => checkout to the latest satisfying semver tag, omit [component-pattern] to checkout latest for all\n `bit checkout reset [component-pattern]` => remove local modifications from the specified ids (or all components when --all is used)",
1688
+ "group": "development",
1636
1689
  "private": false,
1637
1690
  "arguments": [
1638
1691
  {
1639
- "name": "template-name",
1640
- "description": "the name of the workspace template (run 'bit templates', outside of a workspace, to get a list of available templates)"
1692
+ "name": "to",
1693
+ "description": "permitted values: [head, latest, reset, specific-version]. 'head' - last snap/tag. 'latest' - semver latest tag. 'reset' - removes local changes"
1641
1694
  },
1642
1695
  {
1643
- "name": "workspace-name",
1644
- "description": "the name for the new workspace and workspace directory"
1696
+ "name": "component-pattern",
1697
+ "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"
1645
1698
  }
1646
1699
  ]
1647
1700
  },
1648
1701
  {
1649
- "name": "build [component-pattern]",
1650
- "alias": "",
1702
+ "name": "remove <component-pattern>",
1703
+ "alias": "rm",
1651
1704
  "options": [
1652
1705
  [
1653
- "a",
1654
- "all",
1655
- "DEPRECATED. use --unmodified"
1656
- ],
1657
- [
1658
- "u",
1659
- "unmodified",
1660
- "include unmodified components (by default, only new and modified components are built)"
1706
+ "",
1707
+ "soft",
1708
+ "EXPERIMENTAL. mark the component as deleted. after tag/snap and export the remote will be updated"
1661
1709
  ],
1662
1710
  [
1663
- "d",
1664
- "dev",
1665
- "run the pipeline in dev mode"
1711
+ "r",
1712
+ "remote",
1713
+ "remove a component completely from a remote scope (Careful! this is a permanent change. prefer --soft and tag+export)"
1666
1714
  ],
1667
1715
  [
1668
1716
  "",
1669
- "install",
1670
- "install core aspects in capsules"
1717
+ "from-lane",
1718
+ "revert to main if exists on currently checked out lane, otherwise, remove it"
1671
1719
  ],
1672
1720
  [
1673
- "",
1674
- "reuse-capsules",
1675
- "avoid deleting the capsules root-dir before starting the build"
1721
+ "t",
1722
+ "track",
1723
+ "keep tracking component in .bitmap (default = false), helps transform a tagged-component to new"
1676
1724
  ],
1677
1725
  [
1678
- "",
1679
- "tasks <string>",
1680
- "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)"
1726
+ "d",
1727
+ "delete-files",
1728
+ "DEPRECATED (this is now the default). delete local component files"
1681
1729
  ],
1682
1730
  [
1683
1731
  "",
1684
- "cache-packages-on-capsule-root",
1685
- "set the package-manager cache on the capsule root"
1732
+ "keep-files",
1733
+ "keep component files (just untrack the component)"
1686
1734
  ],
1687
1735
  [
1688
- "",
1689
- "list-tasks <string>",
1690
- "list tasks of an env or a component-id for each one of the pipelines: build, tag and snap"
1736
+ "f",
1737
+ "force",
1738
+ "removes the component from the scope, even if used as a dependency. WARNING: components that depend on this component will corrupt"
1691
1739
  ],
1692
1740
  [
1693
- "",
1694
- "skip-tests",
1695
- "skip running component tests during tag process"
1741
+ "s",
1742
+ "silent",
1743
+ "skip confirmation"
1696
1744
  ]
1697
1745
  ],
1698
- "description": "run set of tasks for build",
1746
+ "description": "remove component(s) from the workspace, or a remote scope",
1699
1747
  "extendedDescription": "",
1700
- "group": "development",
1748
+ "group": "collaborate",
1701
1749
  "private": false,
1750
+ "remoteOp": true,
1751
+ "skipWorkspace": true,
1702
1752
  "arguments": [
1703
1753
  {
1704
1754
  "name": "component-pattern",
@@ -1707,197 +1757,183 @@
1707
1757
  ]
1708
1758
  },
1709
1759
  {
1710
- "name": "artifacts <component-pattern>",
1760
+ "name": "resume-export <export-id> <remotes...>",
1711
1761
  "alias": "",
1762
+ "options": [],
1763
+ "description": "EXPERIMENTAL. resume failed export",
1764
+ "extendedDescription": "resume failed export to persist the pending objects on the given remotes.\nthe export-id is the id the client got in the error message during the failure.\nalternatively, exporting to any one of the failed scopes, throws server-is-busy error with the export-id",
1765
+ "group": "collaborate",
1766
+ "private": true,
1767
+ "remoteOp": true
1768
+ },
1769
+ {
1770
+ "name": "export [component-patterns...]",
1771
+ "alias": "e",
1712
1772
  "options": [
1773
+ [
1774
+ "e",
1775
+ "eject",
1776
+ "replace the exported components with their corresponding packages (to use these components without further maintaining them)"
1777
+ ],
1778
+ [
1779
+ "a",
1780
+ "all",
1781
+ "export all components, including non-staged (useful when components in the remote scope are corrupted or missing)"
1782
+ ],
1713
1783
  [
1714
1784
  "",
1715
- "aspect <aspect-id>",
1716
- "show/download only artifacts generated by this aspect-id"
1785
+ "all-versions",
1786
+ "export not only staged versions but all of them (useful when versions in the remote scope are corrupted or missing)"
1717
1787
  ],
1718
1788
  [
1719
1789
  "",
1720
- "task <task-id>",
1721
- "show/download only artifacts generated by this task-id"
1790
+ "origin-directly",
1791
+ "EXPERIMENTAL. avoid export to the central hub, instead, export directly to the original scopes. not recommended!"
1722
1792
  ],
1723
1793
  [
1724
1794
  "",
1725
- "files <glob>",
1726
- "show/download only artifacts matching the given files or the glob pattern (wrap glob patterns in quotes)"
1795
+ "resume <string>",
1796
+ "in case the previous export failed and suggested to resume with an export-id, enter the id"
1727
1797
  ],
1728
1798
  [
1729
1799
  "",
1730
- "out-dir <string>",
1731
- "download the files to the specified dir"
1800
+ "ignore-missing-artifacts",
1801
+ "EXPERIMENTAL. don't throw an error when artifact files are missing. not recommended, unless you're sure the artifacts are in the remote"
1802
+ ],
1803
+ [
1804
+ "j",
1805
+ "json",
1806
+ "show output in json format"
1732
1807
  ]
1733
1808
  ],
1734
- "description": "list and download components artifacts",
1735
- "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",
1736
- "group": "development",
1809
+ "description": "export components from the workspace to remote scopes",
1810
+ "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)",
1811
+ "group": "collaborate",
1737
1812
  "private": false,
1813
+ "remoteOp": true,
1738
1814
  "arguments": [
1739
1815
  {
1740
- "name": "component-pattern",
1741
- "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"
1816
+ "name": "component-patterns...",
1817
+ "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)"
1742
1818
  }
1743
1819
  ]
1744
1820
  },
1745
1821
  {
1746
- "name": "compile [component-names...]",
1822
+ "name": "import [component-patterns...]",
1747
1823
  "alias": "",
1748
1824
  "options": [
1749
1825
  [
1750
- "c",
1751
- "changed",
1752
- "compile only new and modified components"
1826
+ "p",
1827
+ "path <path>",
1828
+ "import components into a specific directory (a relative path in the workspace)"
1829
+ ],
1830
+ [
1831
+ "o",
1832
+ "objects",
1833
+ "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"
1834
+ ],
1835
+ [
1836
+ "d",
1837
+ "display-dependencies",
1838
+ "display the imported dependencies"
1839
+ ],
1840
+ [
1841
+ "O",
1842
+ "override",
1843
+ "override local changes"
1753
1844
  ],
1754
1845
  [
1755
1846
  "v",
1756
1847
  "verbose",
1757
- "show more data, such as, dist paths"
1848
+ "show verbose output for inspection"
1758
1849
  ],
1759
1850
  [
1760
1851
  "j",
1761
1852
  "json",
1762
- "return the compile results in json format"
1853
+ "return the output as JSON"
1763
1854
  ],
1764
1855
  [
1765
- "d",
1766
- "delete-dist-dir",
1767
- "delete existing dist folder before writing new compiled files"
1768
- ]
1769
- ],
1770
- "description": "compile components in the workspace",
1771
- "extendedDescription": "",
1772
- "group": "development",
1773
- "private": false,
1774
- "arguments": [
1775
- {
1776
- "name": "component-names...",
1777
- "description": "a list of component names or component IDs (defaults to all components)"
1778
- }
1779
- ]
1780
- },
1781
- {
1782
- "name": "install [packages...]",
1783
- "alias": "in",
1784
- "options": [
1785
- [
1786
- "v",
1787
- "variants <variants>",
1788
- "add packages to specific variants"
1856
+ "",
1857
+ "skip-npm-install",
1858
+ "DEPRECATED. use \"--skip-dependency-installation\" instead"
1789
1859
  ],
1790
1860
  [
1791
- "t",
1792
- "type [lifecycleType]",
1793
- "\"runtime\" (default) or \"peer\" (dev is not a valid option)"
1861
+ "",
1862
+ "skip-dependency-installation",
1863
+ "do not install packages of the imported components"
1794
1864
  ],
1795
1865
  [
1796
- "u",
1797
- "update-existing [updateExisting]",
1798
- "update existing dependencies version and types"
1866
+ "m",
1867
+ "merge [strategy]",
1868
+ "merge local changes with the imported version. strategy should be \"theirs\", \"ours\" or \"manual\""
1799
1869
  ],
1800
1870
  [
1801
1871
  "",
1802
- "save-prefix [savePrefix]",
1803
- "set the prefix to use when adding dependency to workspace.jsonc"
1872
+ "dependencies",
1873
+ "EXPERIMENTAL. import all dependencies and write them to the workspace"
1804
1874
  ],
1805
1875
  [
1806
1876
  "",
1807
- "skip-dedupe [skipDedupe]",
1808
- "do not dedupe dependencies on installation"
1877
+ "dependents",
1878
+ "EXPERIMENTAL. import components found while traversing from the given ids upwards to the workspace components"
1809
1879
  ],
1810
1880
  [
1811
1881
  "",
1812
- "skip-import [skipImport]",
1813
- "do not import bit objects post installation"
1882
+ "save-in-lane",
1883
+ "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)"
1814
1884
  ],
1815
1885
  [
1816
1886
  "",
1817
- "skip-compile [skipCompile]",
1818
- "do not compile components"
1887
+ "all-history",
1888
+ "relevant for fetching all components objects. avoid optimizations, fetch all history versions, always"
1819
1889
  ],
1820
1890
  [
1821
1891
  "",
1822
- "add-missing-peers [addMissingPeers]",
1823
- "install all missing peer dependencies"
1892
+ "fetch-deps",
1893
+ "fetch dependencies objects"
1824
1894
  ]
1825
1895
  ],
1826
- "description": "installs workspace dependencies",
1827
- "extendedDescription": "when no package is specified, all workspace dependencies are installed and all workspace components are imported.",
1828
- "group": "development",
1896
+ "description": "import components from their remote scopes to the local workspace",
1897
+ "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)",
1898
+ "group": "collaborate",
1829
1899
  "private": false,
1900
+ "remoteOp": true,
1830
1901
  "arguments": [
1831
1902
  {
1832
- "name": "packages...",
1833
- "description": "a list of packages to install (separated by spaces)"
1903
+ "name": "component-patterns...",
1904
+ "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)"
1834
1905
  }
1835
1906
  ]
1836
1907
  },
1837
1908
  {
1838
- "name": "uninstall [packages...]",
1839
- "alias": "un",
1840
- "options": [],
1841
- "description": "uninstall dependencies",
1842
- "extendedDescription": "",
1843
- "group": "development",
1844
- "private": false
1845
- },
1846
- {
1847
- "name": "update",
1848
- "alias": "up",
1849
- "options": [
1850
- [
1851
- "y",
1852
- "yes",
1853
- "automatically update all outdated packages"
1854
- ]
1855
- ],
1856
- "description": "update dependencies",
1857
- "extendedDescription": "",
1858
- "group": "development",
1859
- "private": false
1860
- },
1861
- {
1862
- "name": "link [component-names...]",
1909
+ "name": "fetch [ids...]",
1863
1910
  "alias": "",
1864
1911
  "options": [
1865
1912
  [
1866
- "j",
1867
- "json",
1868
- "return the output as JSON"
1869
- ],
1870
- [
1871
- "",
1872
- "verbose",
1873
- "verbose output"
1913
+ "l",
1914
+ "lanes",
1915
+ "EXPERIMENTAL. fetch component objects from lanes. note, it does not save the remote lanes objects locally, only the refs"
1874
1916
  ],
1875
1917
  [
1876
- "r",
1877
- "rewire",
1878
- "Replace relative paths with module paths in code (e.g. \"../foo\" => \"@bit/foo\")"
1918
+ "c",
1919
+ "components",
1920
+ "fetch components"
1879
1921
  ],
1880
1922
  [
1881
- "",
1882
- "target <dir>",
1883
- "EXPERIMENTAL. link to an external directory (similar to npm-link) so other projects could use these components"
1923
+ "j",
1924
+ "json",
1925
+ "return the output as JSON"
1884
1926
  ],
1885
1927
  [
1886
1928
  "",
1887
- "skip-fetching-objects",
1888
- "skip fetch missing objects from remotes before linking"
1929
+ "from-original-scopes",
1930
+ "fetch indirect dependencies from their original scope as opposed to from their dependents"
1889
1931
  ]
1890
1932
  ],
1891
- "description": "create links in the node_modules directory, to core aspects and to components in the workspace",
1892
- "extendedDescription": "https://bit.dev/docs/workspace/component-links",
1893
- "group": "development",
1894
- "private": false,
1895
- "arguments": [
1896
- {
1897
- "name": "component-names...",
1898
- "description": "names or IDs of the components to link"
1899
- }
1900
- ]
1933
+ "description": "fetch remote objects and store locally",
1934
+ "extendedDescription": "for lanes, use \"/\" as a separator between the remote and the lane name, e.g. teambit.ui/fix-button",
1935
+ "group": "ungrouped",
1936
+ "private": true
1901
1937
  },
1902
1938
  {
1903
1939
  "name": "insights [names...]",
@@ -2325,7 +2361,7 @@
2325
2361
  "private": true
2326
2362
  },
2327
2363
  {
2328
- "name": "merge [values...]",
2364
+ "name": "merge [ids...]",
2329
2365
  "alias": "",
2330
2366
  "options": [
2331
2367
  [
@@ -2379,8 +2415,8 @@
2379
2415
  "EXPERIMENTAL. override the default message for the auto snap"
2380
2416
  ]
2381
2417
  ],
2382
- "description": "merge changes of different component versions",
2383
- "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)",
2418
+ "description": "merge changes of the remote head into local",
2419
+ "extendedDescription": "merge changes of the remote head into local, optionally use '--abort' or '--resolve\nyou can use a pattern for multiple ids, such as bit merge \"utils/*\". (wrap the pattern with quotes to avoid collision with shell commands)",
2384
2420
  "group": "development",
2385
2421
  "private": false
2386
2422
  },
@@ -3142,7 +3178,7 @@
3142
3178
  [
3143
3179
  "",
3144
3180
  "verbose",
3145
- "show extra data: full snap hashes for staged, divergence point for lanes and updates-from-main for forked lanes"
3181
+ "show extra data: full snap hashes for staged and divergence point for lanes"
3146
3182
  ],
3147
3183
  [
3148
3184
  "l",
@@ -3709,6 +3745,11 @@
3709
3745
  "",
3710
3746
  "skip-dependency-installation",
3711
3747
  "do not install packages of the imported components"
3748
+ ],
3749
+ [
3750
+ "",
3751
+ "skip-config",
3752
+ "do not copy the config (aspects-config) to the new component. helpful when it fails during aspect loading"
3712
3753
  ]
3713
3754
  ],
3714
3755
  "description": "EXPERIMENTAL. create a new component out of an existing one (copies source files and config)",