商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > VSCode怎么连接Gitee码云

VSCode怎么连接Gitee码云

  发布于2026-07-04 阅读(0)

扫一扫,手机访问

VSCode 本身其实并不会“连接”Gitee,它只是调用了你电脑上的本地 git 命令。真正需要打通的是:你在终端里执行 git push 时,能否不输入密码、不报错地顺利推送到 git@gitee.com:username/repo.git(SSH 协议)或者 https://@gitee.com/username/repo.git(HTTPS 协议)。那些烦人的弹窗、Permission deniedInvalid username or password,十有八九都是因为远程地址协议选错了,或者是凭据没有正确配置到位。

那么,问题的起点在哪里呢?

先搞清楚:你现在用的是 SSH 还是 HTTPS?

这一步常常被忽略,但它恰恰是所有后续操作的基础。打开 VSCode 内置终端(快捷键 Ctrl+`),确保你当前在项目的根目录下——也就是包含 .git 文件夹的那一层目录。然后执行以下命令:

git remote get-url origin

看看输出结果:

  • 如果输出以 git@gitee.com: 开头,说明你在使用 SSH 协议,下一步要检查密钥配置。
  • 如果输出以 https://gitee.com/ 开头,说明你在使用 HTTPS 协议,那么接下来必须设置 Token。

这里需要特别提醒:如果你的输出是 https://gitee.com/xxx/yyy.git 这种格式,但没有附带 Token,那么每次执行 git push 都会弹出认证窗口——因为 Gitee 已经彻底禁用了明文密码认证。

用 SSH 时遇到 Permission denied (publickey) 怎么办?

这个错误其实不是 VSCode 的问题,而是 git 在终端里根本找不到你的私钥。解决这个问题,三个关键步骤缺一不可:

  • 生成密钥时,建议使用 ed25519 算法(而不是老旧的 rsa):ssh-keygen -t ed25519 -C "gitee-laptop",然后连续按三次回车——路径保持默认,且不要设置密码短语。
  • 公钥必须完整、准确地复制(用 cat ~/.ssh/id_ed25519.pub 查看),然后粘贴到 Gitee 个人设置 → 安全设置 → SSH 公钥。注意不要多出空格或缺少字符。
  • 权限要设置严格:chmod 700 ~/.ssh && chmod 600 ~/.ssh/id_ed25519。如果你用的是 Windows 上的 Git Bash,还需要确保 VSCode 内置终端的默认 profile 设置为 Git Bash。

配置完成后,用 ssh -T git@gitee.com 验证是否打通。如果返回 Welcome to Gitee.com, xxx!,才算真正成功。

如果坚持用 HTTPS,必须把 Token 塞进 URL

千万不要在 VSCode 弹出的认证框里输入账号密码——Gitee 不认。正确的做法是手动修改远程地址:

  • 先去 Gitee 的个人设置 → 私人令牌 → 新建令牌,勾选 repo 权限,然后复制生成的 token 字符串。
  • 执行命令:git remote set-url origin https://@gitee.com//.git(记得把 替换成你自己的信息)。
  • 验证方式:git ls-remote origin,如果没有报错,说明配置成功。如果报错,先检查 Token 是否过期,或者权限是否勾选了 repo

另外,Windows 用户如果启用了 Git Credential Manager,反而可能会干扰 Token 的嵌入,不如直接把 Token 塞进 URL 来得稳定可靠。

VSCode 源代码管理面板不显示分支或推送按钮?

这通常不是插件没装好,而是工作区目录没开对。VSCode 必须在包含 .git 的目录下打开,左下角的状态栏才会正确显示分支名和同步状态(比如 main)。常见错误场景:

  • 你在 /project/backend 目录打开了 VSCode,但 .git 实际上在 /project 目录里——VSCode 根本识别不到 Git 仓库。
  • 解决办法很简单:关闭当前窗口,在终端里 cd /project(也就是包含 .git 的那一层),然后再执行 code .
  • 尽量不要依赖“添加文件夹到工作区”来处理嵌套仓库的情况,单仓库模式最稳妥。

另外需要注意的是,VSCode 并不会自动执行 mergerebase,它的 git.autofetch 功能只拉取元数据。如果你在推送前不手动执行 git pull --rebase,那么点击推送按钮时,很容易因为冲突卡死在“正在运行 git push…”的状态。

VSCode怎么连接Gitee码云

本文转载于:https://www.php.cn/faq/2749808.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注