@teambit/harmony.content.cli-reference 1.95.107 → 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",
@@ -860,21 +881,6 @@
860
881
  }
861
882
  ]
862
883
  },
863
- {
864
- "name": "globals",
865
- "alias": "",
866
- "options": [
867
- [
868
- "j",
869
- "json",
870
- "json format"
871
- ]
872
- ],
873
- "description": "list all globals",
874
- "extendedDescription": "",
875
- "group": "workspace",
876
- "private": false
877
- },
878
884
  {
879
885
  "name": "start [type] [pattern]",
880
886
  "alias": "c",
@@ -1216,131 +1222,192 @@
1216
1222
  ]
1217
1223
  },
1218
1224
  {
1219
- "name": "checkout <to> [component-pattern]",
1220
- "alias": "U",
1225
+ "name": "create <template-name> <component-names...>",
1226
+ "alias": "",
1221
1227
  "options": [
1222
1228
  [
1223
- "i",
1224
- "interactive-merge",
1225
- "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"
1226
1232
  ],
1227
1233
  [
1228
- "o",
1229
- "ours",
1230
- "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"
1231
1237
  ],
1232
1238
  [
1233
- "t",
1234
- "theirs",
1235
- "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"
1236
1242
  ],
1237
1243
  [
1238
- "m",
1239
- "manual",
1240
- "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>`"
1241
1247
  ],
1242
1248
  [
1243
- "r",
1244
- "reset",
1245
- "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"
1246
1295
  ],
1247
1296
  [
1248
1297
  "a",
1249
- "all",
1250
- "all components"
1251
- ],
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": [
1252
1311
  [
1253
- "e",
1254
- "entire-lane",
1255
- "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"
1256
1315
  ],
1257
1316
  [
1258
- "v",
1259
- "verbose",
1260
- "showing verbose output for inspection"
1317
+ "d",
1318
+ "default-scope <scope-name>",
1319
+ "set defaultScope in the new workspace.jsonc"
1261
1320
  ],
1262
1321
  [
1263
1322
  "",
1264
- "reset",
1265
- "DEPRECATED. run \"bit checkout reset\" instead"
1323
+ "standalone",
1324
+ "DEPRECATED. use --skip-git instead"
1266
1325
  ],
1267
1326
  [
1268
- "",
1269
- "skip-npm-install",
1270
- "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)"
1271
1335
  ],
1272
1336
  [
1273
1337
  "",
1274
- "skip-dependency-installation",
1275
- "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"
1276
1340
  ]
1277
1341
  ],
1278
- "description": "switch between component versions or remove local changes",
1279
- "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)",
1280
- "group": "development",
1342
+ "description": "create a new workspace from a template",
1343
+ "extendedDescription": "",
1344
+ "group": "start",
1281
1345
  "private": false,
1282
1346
  "arguments": [
1283
1347
  {
1284
- "name": "to",
1285
- "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)"
1286
1350
  },
1287
1351
  {
1288
- "name": "component-pattern",
1289
- "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"
1290
1354
  }
1291
1355
  ]
1292
1356
  },
1293
1357
  {
1294
- "name": "remove <component-pattern>",
1295
- "alias": "rm",
1358
+ "name": "build [component-pattern]",
1359
+ "alias": "",
1296
1360
  "options": [
1297
1361
  [
1298
- "",
1299
- "soft",
1300
- "EXPERIMENTAL. mark the component as deleted. after tag/snap and export the remote will be updated"
1362
+ "a",
1363
+ "all",
1364
+ "DEPRECATED. use --unmodified"
1301
1365
  ],
1302
1366
  [
1303
- "r",
1304
- "remote",
1305
- "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"
1306
1375
  ],
1307
1376
  [
1308
1377
  "",
1309
- "from-lane",
1310
- "revert to main if exists on currently checked out lane, otherwise, remove it"
1378
+ "install",
1379
+ "install core aspects in capsules"
1311
1380
  ],
1312
1381
  [
1313
- "t",
1314
- "track",
1315
- "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"
1316
1385
  ],
1317
1386
  [
1318
- "d",
1319
- "delete-files",
1320
- "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)"
1321
1390
  ],
1322
1391
  [
1323
1392
  "",
1324
- "keep-files",
1325
- "keep component files (just untrack the component)"
1393
+ "cache-packages-on-capsule-root",
1394
+ "set the package-manager cache on the capsule root"
1326
1395
  ],
1327
1396
  [
1328
- "f",
1329
- "force",
1330
- "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"
1331
1400
  ],
1332
1401
  [
1333
- "s",
1334
- "silent",
1335
- "skip confirmation"
1402
+ "",
1403
+ "skip-tests",
1404
+ "skip running component tests during tag process"
1336
1405
  ]
1337
1406
  ],
1338
- "description": "remove component(s) from the workspace, or a remote scope",
1407
+ "description": "run set of tasks for build",
1339
1408
  "extendedDescription": "",
1340
- "group": "collaborate",
1409
+ "group": "development",
1341
1410
  "private": false,
1342
- "remoteOp": true,
1343
- "skipWorkspace": true,
1344
1411
  "arguments": [
1345
1412
  {
1346
1413
  "name": "component-pattern",
@@ -1349,64 +1416,74 @@
1349
1416
  ]
1350
1417
  },
1351
1418
  {
1352
- "name": "resume-export <export-id> <remotes...>",
1419
+ "name": "artifacts <component-pattern>",
1353
1420
  "alias": "",
1354
- "options": [],
1355
- "description": "EXPERIMENTAL. resume failed export",
1356
- "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",
1357
- "group": "collaborate",
1358
- "private": true,
1359
- "remoteOp": true
1360
- },
1361
- {
1362
- "name": "export [component-patterns...]",
1363
- "alias": "e",
1364
1421
  "options": [
1365
1422
  [
1366
- "e",
1367
- "eject",
1368
- "replace the exported components with their corresponding packages (to use these components without further maintaining them)"
1369
- ],
1370
- [
1371
- "a",
1372
- "all",
1373
- "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"
1374
1426
  ],
1375
1427
  [
1376
1428
  "",
1377
- "all-versions",
1378
- "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"
1379
1431
  ],
1380
1432
  [
1381
1433
  "",
1382
- "origin-directly",
1383
- "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)"
1384
1436
  ],
1385
1437
  [
1386
1438
  "",
1387
- "resume <string>",
1388
- "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"
1389
1462
  ],
1390
1463
  [
1391
- "",
1392
- "ignore-missing-artifacts",
1393
- "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"
1394
1467
  ],
1395
1468
  [
1396
1469
  "j",
1397
1470
  "json",
1398
- "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"
1399
1477
  ]
1400
1478
  ],
1401
- "description": "export components from the workspace to remote scopes",
1402
- "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)",
1403
- "group": "collaborate",
1479
+ "description": "compile components in the workspace",
1480
+ "extendedDescription": "",
1481
+ "group": "development",
1404
1482
  "private": false,
1405
- "remoteOp": true,
1406
1483
  "arguments": [
1407
1484
  {
1408
- "name": "component-patterns...",
1409
- "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)"
1410
1487
  }
1411
1488
  ]
1412
1489
  },
@@ -1426,309 +1503,252 @@
1426
1503
  "private": true
1427
1504
  },
1428
1505
  {
1429
- "name": "import [component-patterns...]",
1430
- "alias": "",
1506
+ "name": "install [packages...]",
1507
+ "alias": "in",
1431
1508
  "options": [
1432
- [
1433
- "p",
1434
- "path <path>",
1435
- "import components into a specific directory (a relative path in the workspace)"
1436
- ],
1437
- [
1438
- "o",
1439
- "objects",
1440
- "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"
1441
- ],
1442
- [
1443
- "d",
1444
- "display-dependencies",
1445
- "display the imported dependencies"
1446
- ],
1447
- [
1448
- "O",
1449
- "override",
1450
- "override local changes"
1451
- ],
1452
1509
  [
1453
1510
  "v",
1454
- "verbose",
1455
- "show verbose output for inspection"
1456
- ],
1457
- [
1458
- "j",
1459
- "json",
1460
- "return the output as JSON"
1461
- ],
1462
- [
1463
- "",
1464
- "skip-npm-install",
1465
- "DEPRECATED. use \"--skip-dependency-installation\" instead"
1511
+ "variants <variants>",
1512
+ "add packages to specific variants"
1466
1513
  ],
1467
1514
  [
1468
- "",
1469
- "skip-dependency-installation",
1470
- "do not install packages of the imported components"
1515
+ "t",
1516
+ "type [lifecycleType]",
1517
+ "\"runtime\" (default) or \"peer\" (dev is not a valid option)"
1471
1518
  ],
1472
1519
  [
1473
- "m",
1474
- "merge [strategy]",
1475
- "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"
1476
1523
  ],
1477
1524
  [
1478
1525
  "",
1479
- "dependencies",
1480
- "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"
1481
1528
  ],
1482
1529
  [
1483
1530
  "",
1484
- "dependents",
1485
- "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"
1486
1533
  ],
1487
1534
  [
1488
1535
  "",
1489
- "save-in-lane",
1490
- "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"
1491
1538
  ],
1492
1539
  [
1493
1540
  "",
1494
- "all-history",
1495
- "relevant for fetching all components objects. avoid optimizations, fetch all history versions, always"
1541
+ "skip-compile [skipCompile]",
1542
+ "do not compile components"
1496
1543
  ],
1497
1544
  [
1498
1545
  "",
1499
- "fetch-deps",
1500
- "fetch dependencies objects"
1546
+ "add-missing-peers [addMissingPeers]",
1547
+ "install all missing peer dependencies"
1501
1548
  ]
1502
1549
  ],
1503
- "description": "import components from their remote scopes to the local workspace",
1504
- "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)",
1505
- "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",
1506
1553
  "private": false,
1507
- "remoteOp": true,
1508
1554
  "arguments": [
1509
1555
  {
1510
- "name": "component-patterns...",
1511
- "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)"
1512
1558
  }
1513
1559
  ]
1514
1560
  },
1515
1561
  {
1516
- "name": "fetch [ids...]",
1517
- "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",
1518
1573
  "options": [
1519
1574
  [
1520
- "l",
1521
- "lanes",
1522
- "EXPERIMENTAL. fetch component objects from lanes. note, it does not save the remote lanes objects locally, only the refs"
1523
- ],
1524
- [
1525
- "c",
1526
- "components",
1527
- "fetch components"
1528
- ],
1529
- [
1530
- "j",
1531
- "json",
1532
- "return the output as JSON"
1533
- ],
1534
- [
1535
- "",
1536
- "from-original-scopes",
1537
- "fetch indirect dependencies from their original scope as opposed to from their dependents"
1575
+ "y",
1576
+ "yes",
1577
+ "automatically update all outdated packages"
1538
1578
  ]
1539
1579
  ],
1540
- "description": "fetch remote objects and store locally",
1541
- "extendedDescription": "for lanes, use \"/\" as a separator between the remote and the lane name, e.g. teambit.ui/fix-button",
1542
- "group": "ungrouped",
1543
- "private": true
1580
+ "description": "update dependencies",
1581
+ "extendedDescription": "",
1582
+ "group": "development",
1583
+ "private": false
1544
1584
  },
1545
1585
  {
1546
- "name": "create <template-name> <component-names...>",
1586
+ "name": "link [component-names...]",
1547
1587
  "alias": "",
1548
1588
  "options": [
1549
1589
  [
1550
- "n",
1551
- "namespace <string>",
1552
- "sets the component's namespace and nested dirs inside the scope"
1590
+ "j",
1591
+ "json",
1592
+ "return the output as JSON"
1553
1593
  ],
1554
1594
  [
1555
- "s",
1556
- "scope <string>",
1557
- "sets the component's scope-name. if not entered, the default-scope will be used"
1595
+ "",
1596
+ "verbose",
1597
+ "verbose output"
1558
1598
  ],
1559
1599
  [
1560
- "a",
1561
- "aspect <string>",
1562
- "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\")"
1563
1603
  ],
1564
1604
  [
1565
- "p",
1566
- "path <string>",
1567
- "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"
1568
1608
  ],
1569
1609
  [
1570
- "e",
1571
- "env <string>",
1572
- "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"
1573
1613
  ]
1574
1614
  ],
1575
- "description": "create a new component (source files and config) using a template.",
1576
- "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",
1577
1617
  "group": "development",
1578
1618
  "private": false,
1579
1619
  "arguments": [
1580
- {
1581
- "name": "template-name",
1582
- "description": "the template for generating the component \n(run 'bit templates' for a list of available templates)"
1583
- },
1584
1620
  {
1585
1621
  "name": "component-names...",
1586
- "description": "a list of component names to generate"
1587
- }
1588
- ],
1589
- "examples": [
1590
- {
1591
- "cmd": "bit create react ui/button",
1592
- "description": "creates a component named 'ui/button' using the 'react' template"
1593
- },
1594
- {
1595
- "cmd": "bit create react ui/button pages/register",
1596
- "description": "creates two components, 'ui/button' and 'pages/register', using the 'react' template"
1597
- },
1598
- {
1599
- "cmd": "bit create react ui/button --scope my-org.my-scope",
1600
- "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`."
1601
- },
1602
- {
1603
- "cmd": "bit create react ui/button --env teambit.community/envs/community-react@1.95.13",
1604
- "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"
1605
1623
  }
1606
1624
  ]
1607
1625
  },
1608
1626
  {
1609
- "name": "templates",
1610
- "alias": "",
1627
+ "name": "checkout <to> [component-pattern]",
1628
+ "alias": "U",
1611
1629
  "options": [
1612
1630
  [
1613
- "s",
1614
- "show-all",
1615
- "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"
1616
1634
  ],
1617
1635
  [
1618
- "a",
1619
- "aspect <aspect-id>",
1620
- "show templates provided by the aspect-id"
1621
- ]
1622
- ],
1623
- "description": "list templates for \"bit create\" and \"bit new\"",
1624
- "extendedDescription": "list components templates when inside bit-workspace (for bit-create), otherwise, list workspace templates (for bit-new)",
1625
- "group": "development",
1626
- "private": false
1627
- },
1628
- {
1629
- "name": "new <template-name> <workspace-name>",
1630
- "alias": "",
1631
- "options": [
1636
+ "o",
1637
+ "ours",
1638
+ "in case of a conflict, override the used version with the current modification"
1639
+ ],
1632
1640
  [
1633
- "a",
1634
- "aspect <aspect-id>",
1635
- "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"
1636
1644
  ],
1637
1645
  [
1638
- "d",
1639
- "default-scope <scope-name>",
1640
- "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"
1641
1649
  ],
1642
1650
  [
1643
- "",
1644
- "standalone",
1645
- "DEPRECATED. use --skip-git instead"
1651
+ "r",
1652
+ "reset",
1653
+ "revert changes that were not snapped/tagged"
1646
1654
  ],
1647
1655
  [
1648
- "s",
1649
- "skip-git",
1650
- "skip generation of Git repository"
1656
+ "a",
1657
+ "all",
1658
+ "all components"
1651
1659
  ],
1652
1660
  [
1653
1661
  "e",
1654
- "empty",
1655
- "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"
1656
1669
  ],
1657
1670
  [
1658
1671
  "",
1659
- "load-from <path-to-template>",
1660
- "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"
1661
1684
  ]
1662
1685
  ],
1663
- "description": "create a new workspace from a template",
1664
- "extendedDescription": "",
1665
- "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",
1666
1689
  "private": false,
1667
1690
  "arguments": [
1668
1691
  {
1669
- "name": "template-name",
1670
- "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"
1671
1694
  },
1672
1695
  {
1673
- "name": "workspace-name",
1674
- "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"
1675
1698
  }
1676
1699
  ]
1677
1700
  },
1678
1701
  {
1679
- "name": "build [component-pattern]",
1680
- "alias": "",
1702
+ "name": "remove <component-pattern>",
1703
+ "alias": "rm",
1681
1704
  "options": [
1682
1705
  [
1683
- "a",
1684
- "all",
1685
- "DEPRECATED. use --unmodified"
1686
- ],
1687
- [
1688
- "u",
1689
- "unmodified",
1690
- "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"
1691
1709
  ],
1692
1710
  [
1693
- "d",
1694
- "dev",
1695
- "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)"
1696
1714
  ],
1697
1715
  [
1698
1716
  "",
1699
- "install",
1700
- "install core aspects in capsules"
1717
+ "from-lane",
1718
+ "revert to main if exists on currently checked out lane, otherwise, remove it"
1701
1719
  ],
1702
1720
  [
1703
- "",
1704
- "reuse-capsules",
1705
- "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"
1706
1724
  ],
1707
1725
  [
1708
- "",
1709
- "tasks <string>",
1710
- "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"
1711
1729
  ],
1712
1730
  [
1713
1731
  "",
1714
- "cache-packages-on-capsule-root",
1715
- "set the package-manager cache on the capsule root"
1732
+ "keep-files",
1733
+ "keep component files (just untrack the component)"
1716
1734
  ],
1717
1735
  [
1718
- "",
1719
- "list-tasks <string>",
1720
- "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"
1721
1739
  ],
1722
1740
  [
1723
- "",
1724
- "skip-tests",
1725
- "skip running component tests during tag process"
1741
+ "s",
1742
+ "silent",
1743
+ "skip confirmation"
1726
1744
  ]
1727
1745
  ],
1728
- "description": "run set of tasks for build",
1746
+ "description": "remove component(s) from the workspace, or a remote scope",
1729
1747
  "extendedDescription": "",
1730
- "group": "development",
1748
+ "group": "collaborate",
1731
1749
  "private": false,
1750
+ "remoteOp": true,
1751
+ "skipWorkspace": true,
1732
1752
  "arguments": [
1733
1753
  {
1734
1754
  "name": "component-pattern",
@@ -1737,197 +1757,183 @@
1737
1757
  ]
1738
1758
  },
1739
1759
  {
1740
- "name": "artifacts <component-pattern>",
1760
+ "name": "resume-export <export-id> <remotes...>",
1741
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",
1742
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
+ ],
1743
1783
  [
1744
1784
  "",
1745
- "aspect <aspect-id>",
1746
- "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)"
1747
1787
  ],
1748
1788
  [
1749
1789
  "",
1750
- "task <task-id>",
1751
- "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!"
1752
1792
  ],
1753
1793
  [
1754
1794
  "",
1755
- "files <glob>",
1756
- "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"
1757
1797
  ],
1758
1798
  [
1759
1799
  "",
1760
- "out-dir <string>",
1761
- "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"
1762
1807
  ]
1763
1808
  ],
1764
- "description": "list and download components artifacts",
1765
- "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",
1766
- "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",
1767
1812
  "private": false,
1813
+ "remoteOp": true,
1768
1814
  "arguments": [
1769
1815
  {
1770
- "name": "component-pattern",
1771
- "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)"
1772
1818
  }
1773
1819
  ]
1774
1820
  },
1775
1821
  {
1776
- "name": "compile [component-names...]",
1822
+ "name": "import [component-patterns...]",
1777
1823
  "alias": "",
1778
1824
  "options": [
1779
1825
  [
1780
- "c",
1781
- "changed",
1782
- "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"
1783
1844
  ],
1784
1845
  [
1785
1846
  "v",
1786
1847
  "verbose",
1787
- "show more data, such as, dist paths"
1848
+ "show verbose output for inspection"
1788
1849
  ],
1789
1850
  [
1790
1851
  "j",
1791
1852
  "json",
1792
- "return the compile results in json format"
1853
+ "return the output as JSON"
1793
1854
  ],
1794
1855
  [
1795
- "d",
1796
- "delete-dist-dir",
1797
- "delete existing dist folder before writing new compiled files"
1798
- ]
1799
- ],
1800
- "description": "compile components in the workspace",
1801
- "extendedDescription": "",
1802
- "group": "development",
1803
- "private": false,
1804
- "arguments": [
1805
- {
1806
- "name": "component-names...",
1807
- "description": "a list of component names or component IDs (defaults to all components)"
1808
- }
1809
- ]
1810
- },
1811
- {
1812
- "name": "install [packages...]",
1813
- "alias": "in",
1814
- "options": [
1815
- [
1816
- "v",
1817
- "variants <variants>",
1818
- "add packages to specific variants"
1856
+ "",
1857
+ "skip-npm-install",
1858
+ "DEPRECATED. use \"--skip-dependency-installation\" instead"
1819
1859
  ],
1820
1860
  [
1821
- "t",
1822
- "type [lifecycleType]",
1823
- "\"runtime\" (default) or \"peer\" (dev is not a valid option)"
1861
+ "",
1862
+ "skip-dependency-installation",
1863
+ "do not install packages of the imported components"
1824
1864
  ],
1825
1865
  [
1826
- "u",
1827
- "update-existing [updateExisting]",
1828
- "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\""
1829
1869
  ],
1830
1870
  [
1831
1871
  "",
1832
- "save-prefix [savePrefix]",
1833
- "set the prefix to use when adding dependency to workspace.jsonc"
1872
+ "dependencies",
1873
+ "EXPERIMENTAL. import all dependencies and write them to the workspace"
1834
1874
  ],
1835
1875
  [
1836
1876
  "",
1837
- "skip-dedupe [skipDedupe]",
1838
- "do not dedupe dependencies on installation"
1877
+ "dependents",
1878
+ "EXPERIMENTAL. import components found while traversing from the given ids upwards to the workspace components"
1839
1879
  ],
1840
1880
  [
1841
1881
  "",
1842
- "skip-import [skipImport]",
1843
- "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)"
1844
1884
  ],
1845
1885
  [
1846
1886
  "",
1847
- "skip-compile [skipCompile]",
1848
- "do not compile components"
1887
+ "all-history",
1888
+ "relevant for fetching all components objects. avoid optimizations, fetch all history versions, always"
1849
1889
  ],
1850
1890
  [
1851
1891
  "",
1852
- "add-missing-peers [addMissingPeers]",
1853
- "install all missing peer dependencies"
1892
+ "fetch-deps",
1893
+ "fetch dependencies objects"
1854
1894
  ]
1855
1895
  ],
1856
- "description": "installs workspace dependencies",
1857
- "extendedDescription": "when no package is specified, all workspace dependencies are installed and all workspace components are imported.",
1858
- "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",
1859
1899
  "private": false,
1900
+ "remoteOp": true,
1860
1901
  "arguments": [
1861
1902
  {
1862
- "name": "packages...",
1863
- "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)"
1864
1905
  }
1865
1906
  ]
1866
1907
  },
1867
1908
  {
1868
- "name": "uninstall [packages...]",
1869
- "alias": "un",
1870
- "options": [],
1871
- "description": "uninstall dependencies",
1872
- "extendedDescription": "",
1873
- "group": "development",
1874
- "private": false
1875
- },
1876
- {
1877
- "name": "update",
1878
- "alias": "up",
1879
- "options": [
1880
- [
1881
- "y",
1882
- "yes",
1883
- "automatically update all outdated packages"
1884
- ]
1885
- ],
1886
- "description": "update dependencies",
1887
- "extendedDescription": "",
1888
- "group": "development",
1889
- "private": false
1890
- },
1891
- {
1892
- "name": "link [component-names...]",
1909
+ "name": "fetch [ids...]",
1893
1910
  "alias": "",
1894
1911
  "options": [
1895
1912
  [
1896
- "j",
1897
- "json",
1898
- "return the output as JSON"
1899
- ],
1900
- [
1901
- "",
1902
- "verbose",
1903
- "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"
1904
1916
  ],
1905
1917
  [
1906
- "r",
1907
- "rewire",
1908
- "Replace relative paths with module paths in code (e.g. \"../foo\" => \"@bit/foo\")"
1918
+ "c",
1919
+ "components",
1920
+ "fetch components"
1909
1921
  ],
1910
1922
  [
1911
- "",
1912
- "target <dir>",
1913
- "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"
1914
1926
  ],
1915
1927
  [
1916
1928
  "",
1917
- "skip-fetching-objects",
1918
- "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"
1919
1931
  ]
1920
1932
  ],
1921
- "description": "create links in the node_modules directory, to core aspects and to components in the workspace",
1922
- "extendedDescription": "https://bit.dev/docs/workspace/component-links",
1923
- "group": "development",
1924
- "private": false,
1925
- "arguments": [
1926
- {
1927
- "name": "component-names...",
1928
- "description": "names or IDs of the components to link"
1929
- }
1930
- ]
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
1931
1937
  },
1932
1938
  {
1933
1939
  "name": "insights [names...]",
@@ -2355,7 +2361,7 @@
2355
2361
  "private": true
2356
2362
  },
2357
2363
  {
2358
- "name": "merge [values...]",
2364
+ "name": "merge [ids...]",
2359
2365
  "alias": "",
2360
2366
  "options": [
2361
2367
  [
@@ -2409,8 +2415,8 @@
2409
2415
  "EXPERIMENTAL. override the default message for the auto snap"
2410
2416
  ]
2411
2417
  ],
2412
- "description": "merge changes of different component versions",
2413
- "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)",
2414
2420
  "group": "development",
2415
2421
  "private": false
2416
2422
  },