如何从Azure DevOps导入自定义包至Unity UPM
从Azure DevOps导入自定义Unity包的解决方法
方法一:使用PAT通过HTTPS导入(最稳定)
- 在Azure DevOps中生成Personal Access Token(PAT):
- 登录AzDO账户,点击右上角头像 → 「Personal access tokens」
- 点击「New Token」,填写名称,设置过期时间,勾选**Code (read)**权限(仅需读取代码的权限即可)
- 生成后立刻复制保存,这个令牌只会显示一次
- 在Unity包管理器中使用带PAT的HTTPS URL导入:
格式为:https://<你的PAT>@dev.azure.com/<组织名称>/<项目名称>/_git/<包仓库名称>
替换<>里的实际信息后,Unity会自动通过PAT完成身份验证,不会弹出密码框
方法二:修复SSH模式的密码提示问题
- 确保本地SSH公钥已添加到AzDO账户:
- 找到本地生成的SSH公钥文件(通常是
~/.ssh/id_rsa.pub),复制内容 - 登录AzDO,进入「User settings」→「SSH public keys」,点击「Add」粘贴公钥并保存
- 找到本地生成的SSH公钥文件(通常是
- 统一Unity与本地Git的配置:
打开Unity → 「Edit」→「Preferences」→「External Tools」,确认Git路径指向你配置了SSH密钥的Git客户端(避免Unity用自带的未配置密钥的Git) - 导入时使用正确的SSH URL:
格式为:git@ssh.dev.azure.com:v3/<组织名称>/<项目名称>/<包仓库名称>
如果仍提示密码,在本地终端执行:- Windows(Git Bash):
eval $(ssh-agent -s)然后ssh-add ~/.ssh/id_rsa - Mac/Linux:
ssh-add ~/.ssh/id_rsa
确保SSH代理加载了你的密钥
- Windows(Git Bash):
方法三:确保自定义包符合UPM规范
- 包仓库根目录必须存在
package.json文件,核心字段要求:{ "name": "com.your-org.package-name", // 必须是反向域名格式 "version": "1.0.0", // 语义化版本号 "displayName": "你的包名称", "description": "包的描述信息" } - 包内仅保留必要文件:Assets目录(包内容)、package.json,移除Unity项目多余文件(如Library、ProjectSettings等)
内容的提问来源于stack exchange,提问作者Dhelio
相关产品推荐
相关产品推荐

