如何通过REST API在BitBucket Server上启用Git-LFS并管理仓库?
启用BitBucket Server仓库Git-LFS的API方案
一、创建仓库时直接启用Git-LFS
BitBucket Server的公开创建仓库API支持通过隐藏参数lfsEnabled直接开启LFS,无需事后修改。在发送创建仓库的POST请求时,添加该参数即可:
POST /rest/api/latest/projects/{projectKey}/repos Content-Type: application/json { "name": "目标仓库名称", "slug": "仓库slug", "project": { "key": "{projectKey}" }, "lfsEnabled": true }
该参数在BitBucket Server 7.0及以上版本均有效,属于官方API未明确标注但实际支持的参数。
二、已创建仓库后启用Git-LFS
若仓库已创建,公开REST API暂无官方更新端点,但可使用BitBucket Server的内部API实现(注意:内部API无官方维护,版本升级可能失效):
需发送PUT请求到内部设置接口,确保请求用户拥有仓库管理员权限,若开启了CSRF保护,还需携带对应请求头:
PUT /rest/internal/latest/projects/{projectKey}/repos/{repoSlug}/settings Content-Type: application/json { "lfsEnabled": true }
你之前遇到405错误,大概率是使用了错误的请求方法(应使用PUT而非POST/GET),或缺少权限、CSRF token导致。
关键注意事项
- 内部API不属于官方公开范畴,不同BitBucket Server版本的路径或参数可能变更,升级前务必测试兼容性。
- 操作前确认请求账号拥有仓库的管理员权限,否则会返回403权限错误。
- 若BitBucket Server启用了CSRF保护,需从页面Cookie或响应头中获取
X-CSRF-Token并加入请求头。
内容的提问来源于stack exchange,提问作者cello
相关产品推荐
相关产品推荐

