À propos de GitHub CLI
GitHub CLI est un outil open source permettant d’utiliser GitHub à partir de la ligne de commande de votre ordinateur. Lorsque vous travaillez à partir de la ligne de commande, vous pouvez utiliser l’GitHub CLI pour gagner du temps et éviter de changer de contexte. Pour plus d’informations, consultez « À propos de GitHub CLI ».
Vous pouvez utiliser GitHub Codespaces dans GitHub CLI pour :
- Répertorier tous codespaces
- Créer un codespace
- Afficher les détails d’un codespace
- Arrêter un codespace
- Supprimer un codespace
- Renommer un codespace
- Recréer un codespace
- Établir une connexion SSH à un codespace
- Ouvrir un codespace dans Visual Studio Code
- Ouvrir un espace de code dans JupyterLab
- Copier un fichier vers/depuis un codespace
- Modifier des ports dans un codespace
- Accéder aux journaux de codespace
- Accéder aux ressources distantes
- Modifier le type de machine d’un codespace
Installation de GitHub CLI
Pour obtenir des instructions d’installation pour GitHub CLI, consultez le dépôt GitHub CLI.
Utilisation de GitHub CLI
Si vous ne l’avez déjà fait, exécutez gh auth login
pour vous authentifier auprès de votre compte GitHub.
Pour utiliser gh
pour travailler avec GitHub Codespaces, tapez gh codespace SUBCOMMAND
ou son alias gh cs SUBCOMMAND
.
En guise d’exemple de série de commandes que vous pourriez pour travailler avec GitHub Codespaces, vous pouvez :
- Répertorier vos codespaces actuels pour vérifier si vous disposez d’un codespace pour un dépôt particulier :
gh codespace list
- Créer un codespace pour la branche de dépôt requise :
gh codespace create -r github/docs -b main
- Établir une connexion SSH au nouveau codespace :
gh codespace ssh -c octocat-literate-space-parakeet-7gwrqp9q9jcx4vq
- Transférer un port vers votre ordinateur local :
gh codespace ports forward 8000:8000 -c octocat-literate-space-parakeet-7gwrqp9q9jcx4vq
Commandes gh
pour GitHub Codespaces
Les sections ci-dessous donnent des exemples de commandes pour chacune des opérations disponibles.
Pour obtenir une référence complète des commandes gh
pour GitHub Codespaces, incluant des détails sur toutes les options disponibles pour chaque commande, consultez l’aide en ligne de GitHub CLI pour « gh codespace ». Sur la ligne de commande, vous pouvez également utiliser gh codespace --help
pour obtenir une aide générale ou gh codespace SUBCOMMAND --help
pour obtenir une aide sur une sous-commande spécifique.
Remarque : l’indicateur -c CODESPACE_NAME
utilisé avec de nombreuses commandes est facultative. Si vous l’omettez, une liste de codespaces s’affiche, dans laquelle vous pouvez opérer un choix.
Répertorier tous codespaces
gh codespace list
La liste inclut le nom unique de chaque espace de codespace, que vous pouvez utiliser dans d’autres commandes gh codespace
.
Un astérisque à la fin du nom d’une branche d’un codespace indique qu’il existe des modifications non validées ou non envoyées dans ce codespace.
Créer un codespace
gh codespace create -r OWNER/REPO_NAME [-b BRANCH]
Pour plus d’informations, consultez « Création d’un codespace pour un dépôt ».
Afficher les détails d’un codespace
gh codespace view
Après avoir exécuté cette commande, vous êtes invité à choisir l’un de vos codespaces existants. Les informations suivantes sont alors affichées :
- Nom du codespace
- État (par exemple, « Disponible » ou « Arrêt »)
- Référentiel
- État de Git
- Chemin d’accès au fichier de configuration du conteneur de développement utilisé pour créer le codespace
- Type de machine
- Délai d’inactivité
- Date et heure de création du codespace
- Période de rétention
Pour plus d’informations, consultez Référence CLI GitHub.
Arrêter un codespace
gh codespace stop -c CODESPACE-NAME
Pour plus d’informations, consultez « Présentation approfondie de GitHub Codespaces ».
Supprimer un codespace
gh codespace delete -c CODESPACE-NAME
Pour plus d’informations, consultez « Suppression d’un codespace ».
Renommer un codespace
gh codespace edit -c CODESPACE-NAME -d 'DISPLAY-NAME'
Pour plus d’informations, consultez « Renommage d’un codespace ».
Recréer un codespace
gh codespace rebuild
Pour effectuer une recréation complète, ajoutez --full
à la fin de cette commande. Pour plus d’informations, consultez « Regénération du conteneur dans un codespace ».
Lorsque vous utilisez cette commande pour recréer un codespace, celle-ci utilise le fichier devcontainer.json
actuellement enregistré dans le système du codespace. Cela se produit que l’état actuel du fichier ait été enregistré ou non dans le contrôle de code source. Pour plus d’informations, consultez « Présentation des conteneurs de développement ».
Établir une connexion SSH à un codespace
Pour exécuter des commandes sur la machine de codespace distante, à partir de votre terminal, vous pouvez établir une connexion SSH au codespace.
gh codespace ssh -c CODESPACE-NAME
Remarque : Le codespace auquel vous vous connectez doit exécuter un serveur SSH. L’image conteneur de développeur par défaut comprend un serveur SSH, qui est démarré automatiquement. Si vos codespaces ne sont pas créés à partir de l’image par défaut, vous pouvez installer et démarrer un serveur SSH en ajoutant ce qui suit à l’objet features
dans votre fichier devcontainer.json
.
"features": {
// ...
"ghcr.io/devcontainers/features/sshd:1": {
"version": "latest"
},
// ...
}
Pour plus d’informations sur le fichier devcontainer.json
et l’image conteneur par défaut, consultez « Présentation des conteneurs de développement ».
GitHub Codespaces crée automatiquement une clé SSH locale pour fournir une expérience d’authentification fluide. Pour plus d’informations sur la connexion avec SSH, consultez gh codespace ssh
.
Ouvrir un codespace dans Visual Studio Code
gh codespace code -c CODESPACE-NAME
Vous devez avoir installé VS Code sur votre machine locale. Pour plus d’informations, consultez « Utilisation de GitHub Codespaces dans Visual Studio Code ».
Ouvrir un espace de code dans JupyterLab
gh codespace jupyter -c CODESPACE-NAME
L’application JupyterLab doit être installée dans le codespace que vous ouvrez. L’image conteneur de développeur par défaut comprend JupyterLab, donc les codespaces créés à partir de l’image par défaut ont toujours JupyterLab installé. Pour plus d’informations sur l’image par défaut, consultez « Présentation des conteneurs de développement » et le dépôt devcontainers/images
. Si vous n’utilisez pas l’image par défaut dans votre configuration de conteneur de développement, vous pouvez installer JupyterLab en ajoutant le composant ghcr.io/devcontainers/features/python
à votre fichier devcontainer.json
. Vous devez inclure l’option "installJupyterlab": true
. Pour plus d’informations, consultez le fichier README du composant python
dans le dépôt devcontainers/features
.
Copier un fichier vers/depuis un codespace
gh codespace cp [-r] SOURCE(S) DESTINATION
Utilisez le préfixe remote:
sur un nom de fichier ou de répertoire pour indiquer qu’il se trouve sur le codespace. Comme avec la commande UNIX cp
, le premier argument spécifie la source, et le dernier spécifie la destination. Si la destination est un répertoire, vous pouvez spécifier plusieurs sources. Utilisez l’indicateur -r
(récursif) si l’une des sources est un répertoire.
L’emplacement des fichiers et répertoires sur le codespace est relatif au répertoire de base de l’utilisateur distant.
Exemples
-
Copier un fichier de l’ordinateur local vers le répertoire
$HOME
d’un codespace :gh codespace cp myfile.txt remote:
-
Copier un fichier vers le répertoire dans lequel un dépôt est extrait dans un codespace :
gh codespace cp myfile.txt remote:/workspaces/REPOSITORY-NAME
-
Copier un fichier à partir d’un codespace vers le répertoire actif sur l’ordinateur local :
gh codespace cp remote:myfile.txt .
-
Copier trois fichiers locaux vers le répertoire
$HOME/temp
d’un codespace :gh codespace cp a1.txt a2.txt a3.txt remote:temp
-
Copier trois fichiers d’un codespace vers le répertoire de travail actuel sur l’ordinateur local :
gh codespace cp remote:a1.txt remote:a2.txt remote:a3.txt .
-
Copier un répertoire local vers le répertoire
$HOME
d’un codespace :gh codespace cp -r mydir remote:
-
Copier un répertoire à partir d’un codespace vers l’ordinateur local, en modifiant le nom du répertoire :
gh codespace cp -r remote:mydir mydir-localcopy
Pour plus d’informations sur la commande gh codespace cp
, y compris les indicateurs supplémentaires que vous pouvez utiliser, consultez le manuel GitHub CLI.
Modifier des ports dans un codespace
Vous pouvez transférer un port sur un codespace vers un port local. Le port reste transféré tant que le processus est en cours d’exécution. Pour arrêter le transfert du port, appuyez sur Ctrl+C.
gh codespace ports forward CODESPACE-PORT_NAME:LOCAL-PORT-NAME -c CODESPACE-NAME
Pour afficher les détails de ports transférés, entrez gh codespace ports
, puis choisissez un codespace.
Vous pouvez définir la visibilité d’un port transféré. Il existe trois paramètres de visibilité :
private
- Visible uniquement par vous. Il s’agit du paramètre par défaut quand vous transférez un port.org
- Visible par les membres de l’organisation propriétaire du dépôt.public
- Visible par toute personne connaissant l’URL et le numéro de port.
gh codespace ports visibility CODESPACE-PORT:private|org|public -c CODESPACE-NAME
Vous pouvez définir la visibilité de plusieurs ports avec une seule commande. Par exemple :
gh codespace ports visibility 80:private 3000:public 3306:org -c CODESPACE-NAME
Pour plus d’informations, consultez « Transfert de ports dans votre espace de code ».
Accéder aux journaux de codespace
Vous pouvez voir le journal de création d’un codespace. Après avoir entré cette commande, vous êtes invité à entrer la phrase secrète pour votre clé SSH.
gh codespace logs -c CODESPACE-NAME
Pour plus d’informations sur le journal de création, consultez « Journaux GitHub Codespaces ».
Accéder aux ressources distantes
Vous pouvez utiliser l’extension GitHub CLI pour créer un pont entre un codespace et votre ordinateur local, afin que le codespace puisse accéder à n’importe quelle ressource distante accessible à partir de votre ordinateur. Pour plus d’informations sur l’utilisation de l’extension, consultez « Utilisation de GitHub CLI pour accéder aux ressources distantes ».
Remarque : L’extension GitHub CLI est actuellement en version bêta et peut faire l’objet de modification.
Modifier le type de machine d’un codespace
gh codespace edit -m MACHINE-TYPE-NAME
Pour plus d’informations, consultez les informations sur l’onglet GitHub CLI dans « Modification du type de machine pour votre espace de code ».