pycharm连接github必须使用personal access token(pat)而非密码,因github已禁用密码认证;token需勾选repo权限,ssh方式更稳定但需手动配置远程地址为git@github.com格式。

PyCharm 连接 GitHub 并上传代码,不是“配完就能推”,而是得先确认你用的是哪种认证方式——Token 还是 SSH。现在 GitHub 已禁用密码登录,直接输账号密码会失败;而 Token 有有效期,SSH 则一劳永逸。选错方式,后面所有操作都会卡在 401 Unauthorized 或 404 Not Found。
PyCharm 添加 GitHub 账号时必须用 Token,不能输密码
GitHub 自 2021 年起就停用了密码认证。你在 Settings → Version Control → GitHub → Add account 里填的“Password”栏,实际要填的是 Personal Access Token(PAT),不是你网站登录密码。
- 去
github.com → Settings → Developer settings → Tokens → Generate new token → Generate new token (classic) - 勾选
repo(必须)、workflow(如果用 CI)、delete_repo(如需删库) - 生成后立刻复制保存——页面关闭就再也看不到明文了
- 粘贴到 PyCharm 的 Password 输入框,点
Log In,成功后会显示用户名和邮箱
如果填密码后提示 401 或弹窗说 “Authentication failed”,说明你没用 Token,或者 Token 权限不够(漏选 repo)。
git remote add origin https://... 推送失败:Connection was reset
这通常不是 PyCharm 的问题,而是本地 git 的代理配置冲突。尤其当你同时用 Gitee(国内)和 GitHub(国外)时,全局代理会让一个通、另一个挂。
- 先清掉可能残留的代理:
git config --global --unset http.proxy和git config --global --unset https.proxy - 如果必须走代理(比如直连 GitHub 超时),不要设全局,只针对 GitHub 单独配:
git config --global url."https://github.com/".insteadOf "https://github.com/"不行,正确做法是:git config --global http.https://github.com/.proxy http://127.0.0.1:7890(端口换成你代理软件的实际端口) - 验证是否生效:
git config --get http.https://github.com/.proxy应该返回你的代理地址
别信“重启 PyCharm 就好”这种说法——代理是 git 进程读的配置,PyCharm 只是调用它。
抓取指定 GitHub用户的 Stars 项目,生成标准化中文 Markdown 报告。用户提及「分析 GitHub stars」「导出收藏项目」「汇总 GitHub 星标」「生成 stars 报告」或粘贴含 ?tab=stars 的链接时触发。执行通过 bash...
VCS → Share Project on GitHub 为什么报 404?
这个菜单项本质是让 PyCharm 帮你自动创建远程仓库并推送,但它依赖两个前提:一是你已登录 GitHub 账号(Token 正确),二是你当前项目**还没初始化 git 仓库**。如果项目目录里已有 .git 文件夹,它会跳过初始化,直接尝试 push 到一个不存在的远程地址,结果就是 404。
- 检查:
ls -a或看项目根目录有没有.git文件夹 - 已有
.git:别点Share Project on GitHub,改用VCS → Git → Remotes → Add手动填远程地址,再Push - 没有
.git:点Share Project on GitHub,它会自动执行git init、add、commit、remote add、push全流程 - 注意:首次推送默认分支名是
main,不是master;如果远程仓库已存在且默认分支是master,PyCharm 可能推错分支,得手动git push -u origin master
SSH 方式更稳,但 PyCharm 默认不走 SSH
PyCharm 的 GitHub 配置界面只支持 Token 登录,不提供 SSH 密钥选项。但你可以绕过它,用原生 git + SSH 推送,PyCharm 依然能识别状态。
- 先按官方流程配好 SSH:
ssh-keygen -t ed25519 -C "you@example.com",然后把cat ~/.ssh/id_ed25519.pub内容加到 GitHub 的Settings → SSH and GPG keys - 测试:
ssh -T git@github.com显示Hi xxx! You've successfully authenticated就 OK - 在项目里用命令行初始化:
git init && git add . && git commit -m "init" - 远程地址必须用 SSH 格式:
git remote add origin git@github.com:username/repo.git(不是https://) - 之后在 PyCharm 里右键项目 →
Git → Push,它会走你系统 git 的 SSH 配置,不用输 Token
Token 会过期,SSH 不会——但一旦你换电脑或重装系统,就得重新配密钥。真正麻烦的不是配,而是忘记自己当初用的是哪种方式,导致反复试错。










