Skip to content

import Update from "/snippets/cli/update.mdx";

NOTE

Um Ihre Bun CLI-Version zu aktualisieren, siehe [`bun upgrade`](/de/runtime/installation#upgrading).

Um alle Abhängigkeiten auf die neueste Version zu aktualisieren:

sh
bun update

Um eine bestimmte Abhängigkeit auf die neueste Version zu aktualisieren:

sh
bun update [Paket]

--interactive

Für eine kontrolliertere Aktualisierungserfahrung verwenden Sie das --interactive-Flag, um auszuwählen, welche Pakete aktualisiert werden sollen:

sh
bun update --interactive
bun update -i

Dies startet eine interaktive Terminaloberfläche, die alle veralteten Pakete mit ihren aktuellen und Zielversionen anzeigt. Sie können dann auswählen, welche Pakete aktualisiert werden sollen.

Interaktive Oberfläche

Die Oberfläche zeigt Pakete gruppiert nach Abhängigkeitstyp:

txt
? Select packages to update - Space to toggle, Enter to confirm, a to select all, n to select none, i to invert, l to toggle latest

  dependencies                Current  Target   Latest
    □ react                   17.0.2   18.2.0   18.3.1
    □ lodash                  4.17.20  4.17.21  4.17.21

  devDependencies             Current  Target   Latest
    □ typescript              4.8.0    5.0.0    5.3.3
    □ @types/node             16.11.7  18.0.0   20.11.5

  optionalDependencies        Current  Target   Latest
    □ some-optional-package   1.0.0    1.1.0    1.2.0

Abschnitte:

  • Pakete sind unter Abschnittsüberschriften gruppiert: dependencies, devDependencies, peerDependencies, optionalDependencies
  • Jeder Abschnitt zeigt Spaltenüberschriften, die mit den Paketdaten ausgerichtet sind

Spalten:

  • Package: Paketname (kann ein Suffix wie dev, peer, optional für Klarheit haben)
  • Current: Derzeit installierte Version
  • Target: Version, die installiert würde (beachtet Semver-Einschränkungen)
  • Latest: Neueste verfügbare Version

Tastatursteuerung

Auswahl:

  • Space: Paketauswahl umschalten
  • Enter: Auswahl bestätigen und aktualisieren
  • a/A: Alle Pakete auswählen
  • n/N: Keine auswählen
  • i/I: Auswahl umkehren

Navigation:

  • ↑/↓ Pfeiltasten oder j/k: Cursor bewegen
  • l/L: Zwischen Ziel- und neuester Version für das aktuelle Paket umschalten

Beenden:

  • Strg+C oder Strg+D: Abbrechen ohne Aktualisierung

Visuelle Indikatoren

  • Ausgewählte Pakete (werden aktualisiert)
  • Nicht ausgewählte Pakete
  • > Aktuelle Cursorposition
  • Farben: Rot (major), gelb (minor), grün (patch) Versionsänderungen
  • Unterstrichen: Aktuell ausgewähltes Aktualisierungsziel

Paketgruppierung

Pakete sind in Abschnitten nach Abhängigkeitstyp organisiert:

  • dependencies - Reguläre Laufzeitabhängigkeiten
  • devDependencies - Entwicklungsabhängigkeiten
  • peerDependencies - Peer-Abhängigkeiten
  • optionalDependencies - Optionale Abhängigkeiten

Innerhalb jedes Abschnitts können einzelne Pakete zusätzliche Suffixe ( dev, peer, optional) für zusätzliche Klarheit haben.

--recursive

Verwenden Sie das --recursive-Flag mit --interactive, um Abhängigkeiten über alle Workspaces in einem Monorepo hinweg zu aktualisieren:

sh
bun update --interactive --recursive
bun update -i -r

Dies zeigt eine zusätzliche Spalte "Workspace" an, die zeigt, zu welchem Workspace jede Abhängigkeit gehört.

--latest

Standardmäßig aktualisiert bun update auf die neueste Version einer Abhängigkeit, die den in Ihrer package.json angegebenen Versionsbereich erfüllt.

Um auf die neueste Version zu aktualisieren, unabhängig davon, ob sie mit dem aktuellen Versionsbereich kompatibel ist, verwenden Sie das --latest-Flag:

sh
bun update --latest

Im interaktiven Modus können Sie einzelne Pakete mit der l-Taste zwischen ihrer Zielversion (Semver beachtend) und der neuesten Version umschalten.

Zum Beispiel mit der folgenden package.json:

json
{
  "dependencies": {
    "react": "^17.0.2"
  }
}
  • bun update würde auf eine Version aktualisieren, die 17.x matcht.
  • bun update --latest würde auf eine Version aktualisieren, die 18.x oder später matcht.

Bun von www.bunjs.com.cn bearbeitet