如何从colab推送到github

G. *_*cia 3 git github google-colaboratory

我将我的公共 github 存储库克隆到我的驱动器中。我可以将 colab 与笔记本一起使用。我也可以拉。然而,尽管已正确配置,但在尝试推送时仍面临以下错误:

!git config --global user.email "my_email"
!git config --global user.name "my_user"
Run Code Online (Sandbox Code Playgroud)

这样做时,!git push origin master我收到以下错误:

fatal: could not read Username for 'https://github.com': No such device or address
Run Code Online (Sandbox Code Playgroud)

以前有人遇到过这个问题吗?

Kor*_*ich 10

这是克隆、添加文件和推回的方法

uname = "korakot"
!git config --global user.email '$uname@gmail.com'
!git config --global user.name '$uname'

from getpass import getpass
password = getpass('Password:')
!git clone https://$uname:$password@github.com/korakot/myrepo
%cd myrepo
# create a file, then add it to stage
!git add hello.txt
!git commit -m 'commit message'  # commit in Colab
!git push origin master          # push to github
Run Code Online (Sandbox Code Playgroud)


小智 7

标记为已接受的答案是正确的,但 GitHub 已弃用对 HTTPS 使用用户名密码。请参阅此处Github 的博客

您应该创建个人访问令牌并按如下方式使用:

!git remote add origin https://<USERNAME>:<Token>@github.com/<USERNAME>/reponame.git
Run Code Online (Sandbox Code Playgroud)

要创建您的个人访问令牌:

  1. 在您的 GitHub 帐户中转到设置
  2. 转到开发者设置
  3. 转到个人访问令牌
  4. 生成新的令牌

请务必保存它,因为您只会看到一次。


G. *_*cia 5

上面提到的选项都不适合我。我终于在这篇Medium文章中找到了答案。基本上,我错过的关键是:

> !git remote add origin https://<USERNAME>:<PASSWORD>@github.com/<USERNAME>/reponame.git
Run Code Online (Sandbox Code Playgroud)