Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
GH-CODESPACE-SSH(1)	       GitHub CLI manual	   GH-CODESPACE-SSH(1)

NAME
       gh-codespace-ssh	- SSH into a codespace

SYNOPSIS
       gh codespace ssh	[<flags>...] [-- <ssh-flags>...] [<command>]

DESCRIPTION
       The  ssh	command	is used	to SSH into a codespace. In its	simplest form,
       you can run gh cs ssh, select a codespace interactively,	and connect.

       The ssh command will automatically create a public/private ssh key pair
       in the ~/.ssh directory if you do not have an existing valid key	 pair.
       When selecting the key pair to use, the preferred order is:

	 1. Key	specified by -i	in <ssh-flags>

	 2. Automatic key, if it already exists

	 3. First valid	key pair in ssh	config (according to ssh -G)

	 4. Automatic key, newly created

       The  ssh	 command also supports deeper integration with OpenSSH using a
       --config	option	that  generates	 per-codespace	ssh  configuration  in
       OpenSSH format.	Including this configuration in	your ~/.ssh/config im-
       proves  the  user experience of tools that integrate with OpenSSH, such
       as Bash/Zsh completion of ssh hostnames,	 remote	 path  completion  for
       scp/rsync/sshfs,	git ssh	remotes, and so	on.

       Once  that  is  set  up	(see the second	example	below),	you can	ssh to
       codespaces as if	they were ordinary remote hosts	(using ssh, not	gh  cs
       ssh).

       Note  that  the codespace you are connecting to must have an SSH	server
       pre-installed.  If the docker image being used for the  codespace  does
       not  have  an  SSH  server, install it in your Dockerfile or, for code-
       spaces that use Debian-based images, you	can add	the following to  your
       devcontainer.json:

       "features": {
	    "ghcr.io/devcontainers/features/sshd:1": {
		 "version": "latest"
	    }
       }

OPTIONS
       -c, --codespace <string>
	      Name of the codespace

       --config
	      Write OpenSSH configuration to stdout

       -d, --debug
	      Log debug	data to	a file

       --debug-file <string>
	      Path of the file log to

       --profile <string>
	      Name of the SSH profile to use

       -R, --repo <string>
	      Filter codespace selection by repository name (user/repo)

       --repo-owner <string>
	      Filter codespace selection by repository owner (username or org)

       --server-port <int> (default 0)
	      SSH server port number (0	=> pick	unused)

EXIT CODES
       0: Successful execution

       1: Error

       2: Command canceled

       4: Authentication required

       NOTE:  Specific	commands  may have additional exit codes. Refer	to the
       command's help for more information.

EXAMPLE
       $ gh codespace ssh

       $ gh codespace ssh --config > ~/.ssh/codespaces
       $ printf	'Match all\nInclude ~/.ssh/codespaces\n' >> ~/.ssh/config

SEE ALSO
       gh-codespace(1)

				   Apr 2025		   GH-CODESPACE-SSH(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=gh-codespace-ssh&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>

home | help