gh cliでCodespace上のインスタンスにファイルをコピーする

2021-12-07GitHubCodespace


やりたい機会があったので調べてみた

Using Codespaces with GitHub CLI - GitHub Docs

ドキュメントを見れば解決ではある

ファイルのコピー

$ gh codespace cp -e ~/memo/hoge.png 'remote:/workspaces/til/'
? Choose codespace: swfz/til: master* [swfz-til-xxxxxxxxxxxx]
hoge.png                                                                                                      100%   51KB 220.8KB/s   00:00

どのcodespaceに接続するか選択する、もしくは事前に調べておいて-cオプションで指定する

gh_codespace_cp01.png

-eはヘルプを見れば分かるがexpand

”で囲った中身をremote側で展開するためのもの

なので↑のような書き方になっている

GitHubのCLIが使えればOKなのでWSL2の中から特定のファイルをコピーする、といった使い方もできる

SSH接続

sshもできる

$ gh codespace ssh -c swfz-til-xxxxxxxxxxxx

-cで対象のcodespaceを指定しない場合はインタラクティブに選択させてくれる

VS Codeのターミナルだと一部ショートカットが競合してしまったりすることがあるのでSSH接続していろいろやったほうが何も気にしなくてよいこともある

おわり

あらためてGitHubのCLI便利だな!と感じた