vscode 依赖本地 git 命令连接 gitee,需先确认 remote url 协议(ssh 或 https),再分别配置 ssh 密钥或 personal access token;务必在含 .git 的根目录打开项目,否则源代码管理面板无法识别仓库。

VSCode 本身不“连接 Gitee”,它只调用本地 git 命令;真正要通的,是你的终端里执行 git push 能否不输密码、不报错地抵达 git@gitee.com:username/repo.git(SSH)或 https://<token>@gitee.com/username/repo.git</token>(HTTPS)。卡在弹窗、Permission denied、Invalid username or password——90% 是远程地址协议选错,或凭据没落位。
怎么确认当前用的是 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://<your_token>@gitee.com/<username>/<repo>.git</repo></username></your_token>(把<your_token></your_token>、<username></username>、<repo></repo>替换掉) - 验证:
git ls-remote origin,无报错即通;报错优先查 Token 是否过期、权限是否勾选repo
Windows 用户若启用了 Git Credential Manager,反而可能干扰 Token 嵌入,不如直接塞 URL 稳定。
VSCode 源代码管理面板不显示分支或推送按钮?
不是插件没装好,而是工作区没开对。VSCode 必须在含 .git 的目录下打开,左下角状态栏才会显示分支名和同步状态(如 main、✓)。常见错误:
- 你在
/project/backend目录打开 VSCode,但.git在/project——VSCode 根本识别不了 Git 仓库 - 解决:关掉窗口,在终端
cd /project(有.git的那层),再执行code . - 别依赖“添加文件夹到工作区”处理嵌套仓库;单仓库模式最稳
复杂点在于:VSCode 不自动 merge 或 rebase,git.autofetch 只拉元数据;推送前不 git pull --rebase,点推送按钮大概率因冲突卡死在“正在运行 git push…”。











