1. Centos 虚拟机里从零把代码推上 Git 仓库卡在哪一步很多人第一次在 Centos 虚拟机里做代码上传卡点往往不是git push本身而是前面那一串环境准备虚拟机里有没有装 Git、SSH Key 有没有生成、远程仓库地址用的是 HTTPS 还是 SSH、settings.json和config.toml这类 AI 辅助工具配置该放哪。尤其是现在写代码经常要接 AI 辅助工具Key 和 API 通道散落在各个配置文件里换一台机器就要重新配一遍非常折腾。这篇就按「Centos 虚拟机 → 本地 Git 仓库 → 远程仓库 → 上传验证」这条完整链路走一遍同时把 TaoToken 作为统一 Key/API 通道的配置骨架也一起给出来。TaoToken 是一个面向开发者的 AI 模型调用与 Key 管理平台适合需要统一管理多个 AI 辅助工具配置、又不想在每个工具里重复填 Key 的人。你可以把它理解成一个「配置中枢」Git 管代码版本TaoToken 管 AI 工具的接入配置两边互不干扰。下面所有命令都在 Centos 虚拟机的终端里执行我尽量把每一步的预期输出也写出来方便你对照。如果你用的是最小化安装的 Centos部分工具需要先补装文中会标注。2. 前置准备Git 安装、目录规划与 TaoToken Key 获取2.1 确认系统环境与安装 Git先确认虚拟机网络正常然后安装 Git。Centos 7/8 用 yumCentos Stream 9 或 Rocky/Alma 用 dnf 也可以命令基本一致。# 查看系统版本 cat /etc/centos-release # 安装 Git yum install -y git # 验证版本 git --version预期输出类似git version 2.27.0。如果提示找不到包先执行yum makecache刷新源。安装完成后建议顺手装两个后面会用到的工具lrzsz用于本地和虚拟机之间传文件unzip用于解压项目包。yum install -y lrzsz unzip2.2 规划工作目录不建议直接在/tmp下长期放项目/tmp可能被系统清理。我习惯在/home下建一个工作区比如/home/work项目放里面。mkdir -p /home/work cd /home/work pwd预期输出/home/work。后面所有操作都在这个目录下进行避免路径混乱。2.3 获取 TaoToken Key 与接入地址TaoToken 的官网入口是 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 基础地址是 https://taotoken.net/api 。注册登录后在控制台里创建 API Key这个 Key 就是后面写进settings.json和config.toml的凭证。具体操作路径进入控制台 → API Keys 页面 → 新建 Key → 复制保存。Key 只在创建时完整显示一次记得先存到安全的地方。如果你后面要长期跑编码类 Agent 工具可以关注 Coding Plan 页面它更适合高频调用场景只是临时验证模型连通性用模型对话页面就够了。3. 可复制配置Git 初始化、SSH 与 TaoToken 配置文件3.1 本地 Git 仓库初始化假设你已经把项目文件放到了/home/work/myproject进入该目录执行初始化。cd /home/work/myproject git init预期输出Initialized empty Git repository in /home/work/myproject/.git/。用ls -a可以看到多了一个.git隐藏目录这就是本地仓库的核心。接着配置全局身份这两条是提交记录里的作者信息必须填否则commit会报错。git config --global user.name yourname git config --global user.email youexample.com # 查看是否生效 git config --global --list然后把文件加入暂存区并提交第一版。git add . git commit -m v1 first commit预期输出会列出本次提交涉及的文件数量和变更统计。如果提示nothing to commit说明目录里没有可提交的文件检查一下项目文件是否真的放进来了。3.2 配置 SSH 并关联远程仓库远程仓库推荐用 SSH 方式比 HTTPS 每次输密码省事。先在虚拟机里生成密钥对。ssh-keygen -t rsa -b 4096 -C youexample.com一路回车即可默认生成在~/.ssh/id_rsa和~/.ssh/id_rsa.pub。查看公钥内容cat ~/.ssh/id_rsa.pub复制输出的整段内容粘贴到远程仓库平台Gitee、GitHub、GitLab 都支持的 SSH 公钥设置里。然后在虚拟机里测试连通性ssh -T gityour-git-host首次连接会提示确认指纹输入yes。看到类似Hi xxx! Youve successfully authenticated就说明 SSH 通了。接下来关联远程仓库地址。注意把地址换成你自己的git remote add origin gityour-git-host:yourname/myproject.git # 查看已关联的远程地址 git remote -v如果之前误用了 HTTPS 地址可以用git remote set-url origin 新地址替换。3.3 TaoToken 的 settings.json 与 config.toml 骨架AI 辅助工具的配置通常分两类JSON 格式的settings.json和 TOML 格式的config.toml。下面给出骨架把 Key 和 API 地址替换成你自己的即可。settings.json骨架{ api_key: sk-your-taotoken-key, base_url: https://taotoken.net/api, model: your-model-name, timeout: 60 }config.toml骨架[provider] name taotoken api_key sk-your-taotoken-key base_url https://taotoken.net/api [request] timeout 60 max_retries 3注意Key 不要提交到 Git 仓库。建议把这两个配置文件加入.gitignore或者用环境变量注入 Key避免泄露。echo settings.json .gitignore echo config.toml .gitignore git add .gitignore git commit -m ignore local ai config4. 验证请求与上传测试确认链路真的通了4.1 推送代码到远程仓库第一次推送需要指定上游分支git push -u origin master如果你的默认分支是main把master换成main。预期输出会显示对象计数、压缩、写入进度最后给出分支跟踪信息。推送成功后去远程仓库页面刷新应该能看到你的文件。如果推送时报failed to push some refs多半是远程仓库初始化时带了 README本地和远程历史不一致。可以先拉取合并git pull --rebase origin master git push -u origin master4.2 验证 TaoToken 通道连通性配置文件写好后用一条最简单的请求验证 Key 和地址是否可用。以 curl 为例curl -X POST https://taotoken.net/api/v1/chat/completions \ -H Authorization: Bearer sk-your-taotoken-key \ -H Content-Type: application/json \ -d { model: your-model-name, messages: [{role: user, content: ping}] }如果返回包含choices字段的 JSON说明通道正常。返回 401 检查 Key 是否复制完整返回 404 检查 base_url 是否多了或少了路径段。更直观的方式是直接在模型对话页面发一条消息看是否有正常回复。4.3 上传测试的完整动作为了确认整条链路没问题可以改一个文件再推一次echo # test upload README.md git add README.md git commit -m test upload git push去远程仓库看 README 是否更新。这一步能同时验证 SSH 认证、远程关联、分支跟踪三件事。5. 本篇常见错排查5.1 git push 提示 Permission denied (publickey)说明 SSH Key 没配好。检查三件事公钥是否完整粘贴到远程平台、ssh -T是否返回成功、git remote -v里的地址是不是 SSH 格式git开头。如果之前用 HTTPS 关联过用git remote set-url换掉。5.2 git commit 报 Please tell me who you are全局身份没配。执行git config --global user.name和user.email两条命令即可。注意--global不能漏否则只对当前仓库生效。5.3 TaoToken 请求返回 401 或 403Key 无效或没带对请求头。确认Authorization是Bearer加 Key中间有一个空格。Key 前后不要有换行或多余空格。如果 Key 是在别的项目里复制过来的确认它没有被删除或过期。5.4 config.toml 解析报错TOML 对格式敏感。检查字符串是否用双引号包裹、节名是否用方括号、有没有中文标点混入。可以用在线 TOML 校验工具先验证一遍再放进项目。5.5 虚拟机里 git push 很慢或超时先确认虚拟机网络能访问远程仓库域名用ping或curl -I测试。如果是 DNS 问题检查/etc/resolv.conf。SSH 端口被限制时可以改用 HTTPS 方式临时推送。6. 把配置沉淀下来下次直接复用Git 这条链路跑通一次之后真正省时间的是把配置沉淀成模板。我的做法是在/home/work下放一个dotfiles目录把常用的settings.json、config.toml骨架和.gitignore模板都放进去新项目直接复制。TaoToken 的 Key 统一在控制台管理换工具时只改配置文件里的base_url和api_key两行不用每个工具重新注册。如果你后面要接编码类 Agent 工具建议走 Coding Plan 通道配置方式和上面一致只是调用额度策略不同。接入过程中遇到报错优先去 API Keys 页面确认 Key 状态再对照接入文档检查请求格式。把 Git 管版本、TaoToken 管 AI 配置这两件事分开虚拟机里的开发环境会清爽很多。