Skip to main content

Résolution des problèmes de création et de suppression de codespaces

Cet article fournit des étapes de résolution des problèmes courants que vous pouvez rencontrer lors de la création ou de la suppression d’un codespace, y compris les problèmes de stockage et de configuration.

Création de codespaces

Aucun accès à la création d’un codespace

GitHub Codespaces n’est pas disponible pour tous les dépôts. Si les options de création d’un codespace ne sont pas affichées, GitHub Codespaces peut ne pas être disponible pour ce dépôt.

Si votre utilisation mensuelle de GitHub Codespaces n’est pas épuisée sur votre compte personnel ou si vous avez configuré un mode de paiement et une limite de dépense, vous pouvez créer un codespace pour les dépôts publics.

Vous pouvez également créer un codespace pour tous les dépôts privés pour lesquels vous avez au moins un accès en lecture, à condition qu’ils appartiennent à un compte personnel. Si un dépôt est privé ou interne et qu’il appartient à une organisation, vous pouvez ou non créer un codespace pour ce dépôt, en fonction des paramètres de l’organisation ou de son entreprise parente.

Si vous ne pouvez pas créer de codespace pour un référentiel, cela peut être dû à l’un des paramètres d’organisation ou d’entreprise suivants.

  • Les propriétaires d’organisation et d’entreprise peuvent choisir les utilisateurs qui peuvent accéder à GitHub Codespaces dans les référentiels privés et internes d’une organisation. Pour plus d’informations, consultez « Activation ou désactivation de GitHub Codespaces pour votre organisation ».
  • Les propriétaires d’organisation et d’entreprise peuvent désactiver la duplication pour tout ou partie des dépôts privés et internes d’une organisation. Si vous disposez uniquement d’un accès en lecture à un dépôt et que vous ne pouvez pas le dupliquer, vous ne pouvez pas créer de codespace pour ce dépôt. Pour plus d’informations, consultez « Gestion de la stratégie de duplication pour votre organisation ».
  • Si vous avez un compte d’utilisateur managé, vous ne pouvez pas créer de codespaces pour vos dépôts personnels, sauf s’il s’agit d’une duplication d’un dépôt appartenant à l’organisation et que vous êtes autorisé à utiliser GitHub Codespaces aux frais de l’organisation. Pour plus d’informations, consultez « À propos d’Enterprise Managed Users ».

Pour plus d’informations sur les paramètres d’organisation et d’entreprise qui peuvent affecter votre possibilité de créer un codespace, consultez « Activation ou désactivation de GitHub Codespaces pour votre organisation ».

Pour plus d’informations sur l’utilisation incluse pour les comptes personnels et la définition d’une limite de dépense, consultez « À propos de la facturation pour GitHub Codespaces » et « Gestion de la limite de dépense pour GitHub Codespaces ».

Codespace ne s’ouvre pas lors de la création

Si vous créez un codespace et qu’il ne s’ouvre pas :

  1. Essayez de recharger la page en cas de problème de mise en cache ou de création de rapports.
  2. Accédez à votre page GitHub Codespaces : https://github.com/codespaces et vérifiez si le nouveau codespace est répertorié. Le processus a peut-être créé correctement le codespace, mais n’a pas pu être renvoyé à votre navigateur. Si le nouveau codespace est répertorié, vous pouvez l’ouvrir directement à partir de cette page.
  3. Réessayez de créer le codespace du référentiel pour exclure un échec de communication temporaire.

Si vous ne pouvez toujours pas créer de codespace pour un dépôt où GitHub Codespaces est disponible, Vous avez peut-être besoin de contacter le support technique. Pour plus d’informations, consultez « Travailler avec le support pour GitHub Codespaces ».

Échec de la création d’un codespace

Si la création d’un codespace échoue, cela est probablement dû à un problème d’infrastructure temporaire dans le cloud (par exemple, un problème de provisionnement d’une machine virtuelle pour le codespace). Une autre cause d’échec, bien que plus rare, est une opération de génération de conteneur qui prend plus d’une heure. Dans ce cas, la génération est annulée et la création du codespace échoue.

Remarque : Un codespace qui n’a pas été correctement créé ne pourra jamais être utilisé et doit être supprimé. Pour plus d’informations, consultez « Suppression d’un codespace ».

Si la création d’un codespace se solde par un échec :

  1. Consultez la Page d’état de GitHub pour rechercher tout incident actif.

  2. Accédez à votre page GitHub Codespaces, supprimez le codespace, puis recréez-en un.

  3. Si le conteneur est en cours de génération, consultez les journaux en streaming et vérifiez que la génération n’est pas bloquée. Une génération de conteneur qui prend plus d’une heure est annulée et entraîne l’échec de la création.

    Cela se produit notamment quand un script en cours d’exécution affiche une invite et attend la réponse de l’utilisateur. Dans ce cas, supprimez l’invite interactive pour que la génération puisse se terminer sans interaction.

    Remarque : Pour afficher les journaux pendant une génération :

    • Dans le navigateur, si les étapes initiales du processus de génération prennent plus de quelques secondes, la page « Configuration de votre codespace » s’affiche. Cliquez sur Afficher les journaux.

      Capture d’écran de la page « Configuration de votre codespace » dans un navigateur. Le lien « Afficher les journaux » est mis en évidence avec un encadré orange foncé.

    • Dans l’application de bureau VS Code , cliquez sur Génération d’un codespace dans le message contextuel « Configuration de la connexion à distance » qui s’affiche.

      Capture d’écran d’un message contextuel dans VS Code, indiquant « Configuration de la connexion à distance : Génération d’un codespace ».

      Les messages de journal sont imprimés dans le Terminal dans VS Code.

  4. Si vous avez un conteneur dont la génération prend beaucoup de temps, envisagez d’utiliser des prébuilds pour accélérer les créations de codespaces. Pour plus d’informations, consultez « Configuration des prébuilds ».

Suppression de codespaces

Un codespace ne peut être supprimé que par :

  • La personne qui a créé le codespace
  • Un propriétaire d’organisation si le codespace appartient à une organisation
  • Suppression automatique à la fin d’une période de conservation

Pour plus d’informations, consultez « Suppression d’un codespace » et « Configuration de la suppression automatique de vos espaces de code ».

Stockage de conteneurs

Lorsque vous créez un codespace, il a une quantité finie de stockage et au fil du temps, il peut être nécessaire de libérer de l’espace. Essayez d’exécuter l’une des commandes suivantes dans le terminal GitHub Codespaces pour libérer de l’espace de stockage.

  • Supprimez les packages qui ne sont plus utilisés à l’aide de sudo apt autoremove.
  • Nettoyez le cache apt à l’aide de sudo apt clean.
  • Consultez les 10 plus grands fichiers du codespace avecsudo find / -printf '%s %p\n'| sort -nr | head -10.
  • Supprimez les fichiers inutiles, tels que les artefacts de build et les journaux.

Quelques options plus destructrices :

  • Supprimez les images Docker inutilisées, les réseaux et les conteneurs à l’aide de docker system prune (ajoutez -a si vous souhaitez supprimer toutes les images et --volumes si vous souhaitez supprimer tous les volumes).
  • Supprimer les fichiers non suivis de l’arborescence de travail : git clean -i.

Configuration

Si les changements apportés à la configuration de votre conteneur de développement entraînent une erreur de conteneur, votre codespace s’exécute en mode de récupération et vous voyez s’afficher un message d’erreur.

This codespace is currently running in recovery mode due to a container error.

Passez en revue les journaux de création et mettez à jour la configuration de conteneur de développement si nécessaire. Pour plus d’informations, consultez « Journaux GitHub Codespaces ».

Vous pouvez ensuite essayer de redémarrer le codespace ou de regénérer le conteneur. Pour plus d’informations sur la reconstruction du conteneur, consultez « Présentation des conteneurs de développement ».