Aller au contenu
English

WorkspaceGitState

Les champs ci-dessous couvrent toutes les variantes ; la signature précise leurs combinaisons autorisées.

  • stateRequis
    "registered" | "unregistered" | "unavailable" | "skipped"
    registered : un worktree Git de ce dépôt ; unregistered : absent de git worktree list ; skipped : pas un dossier ; unavailable : l’inspection a échoué, voir reason.
  • headSelon la variante
    string
    Commit HEAD indiqué par git worktree list.
  • branchSelon la variante
    string | null
    Nom de branche du worktree, ou null lorsque HEAD est détaché.
  • dirtySelon la variante
    boolean
    true lorsque git status signale des changements suivis ou non suivis. Les fichiers ignorés ne comptent pas.
  • lockedSelon la variante
    boolean
    Indique si Git marque le worktree comme verrouillé.
  • reasonSelon la variante
    string
    Motif de l’état skipped (NOT_DIRECTORY) ou unavailable, tel que WORKSPACE_CHANGED, REGISTRATION_MISMATCH ou GIT_INSPECTION_FAILED.
export type WorkspaceGitState =
  | {
      readonly state: "registered";
      readonly head: string;
      readonly branch: string | null;
      readonly dirty: boolean;
      readonly locked: boolean;
    }
  | {
      readonly state: "unregistered";
    }
  | {
      readonly state: "skipped" | "unavailable";
      readonly reason: string;
    };