我只想转到shell,克隆存储库,转到datalab并在该存储库上工作,将其拉回并删除实例。
为了做到这一点,我需要访问已在永久磁盘中克隆的存储库。
谢谢
答案 0 :(得分:2)
您的Datalab实例无法访问Cloud Shell使用的磁盘,但您可以尝试以下解决方法:
gcloud compute copy-files
将文件复制到Datalab实例。gcloud compute copy-files
将更改的文件拉回您的Cloud Shell实例。但是,最简单的选择是,如果您可以将存储库直接克隆到Datalab实例,使用它,然后直接从Datalab推回存储库。
对于GitHub存储库,我更喜欢设置它的方法是在我的Datalab实例上生成SSH密钥对,然后将其作为部署密钥添加到我的存储库。
在我的Datalab实例中运行的代码单元格是:
%bash
export GIT_KEYFILE="/content/datalab/.ssh/id_rsa"
mkdir -p $(dirname ${GIT_KEYFILE})
ssh-keygen -t rsa -b 4096 -C `git config --global user.email` -P "" -f "${GIT_KEYFILE}"
echo "mkdir -p ~/.ssh && cp ${GIT_KEYFILE}* ~/.ssh/ && ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts" >> /content/datalab/.config/startup.sh
mkdir -p ~/.ssh && cp ${GIT_KEYFILE}* ~/.ssh/ && ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts
echo $'\nProvide the following to GitHub as your deploy key:'
cat "${GIT_KEYFILE}.pub"
两者都生成密钥并确保在Datalab启动时正确配置git以使用该密钥。
您需要复制并粘贴到GitHub中的位作为部署密钥位于以“ssh-rsa”开头并以您的电子邮件地址结尾的代码单元格的输出中。