You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何移除已通过DVC推送到GCS的凭证文件?

解决方法

1. 确认DVC远程存储的位置

首先执行以下命令查看当前DVC配置的远程存储信息:

dvc remote list

如果显示远程存储(比如名为gcs),获取其对应的GCS bucket路径:

dvc remote get gcs url

输出格式类似gs://your-bucket-name/dvc-cache,这就是DVC上传文件的根路径。

2. 定位目标文件在GCS的实际路径

DVC上传的文件会以哈希值命名存储在远程缓存中,你可以通过以下方式找到对应路径:

  • 如果本地仍保留data/jsons/creds.json,计算其DVC哈希:
    dvc hash data/jsons/creds.json
    
    得到哈希值(比如a1b2c3d4e5f6)后,GCS上的路径为gs://your-bucket-name/dvc-cache/a1/b2c3d4e5f6
  • 如果本地文件已删除,直接用gsutil遍历bucket查找目标文件:
    gsutil ls gs://your-bucket-name/**/creds.json
    

3. 删除GCS上的加密文件

根据文件的加密方式执行对应命令:

情况A:使用客户提供的加密密钥(CSE)

删除时需指定加密密钥文件路径:

gsutil rm -k /path/to/your/encryption-key-file gs://YOUR_BUCKET_NAME/PATH_TO_FILE

情况B:使用GCS KMS密钥加密(SSE-KMS)

确保当前执行命令的账号拥有对应KMS密钥的roles/cloudkms.cryptoKeyEncrypterDecrypter权限,直接执行删除命令:

gsutil rm gs://YOUR_BUCKET_NAME/PATH_TO_FILE

4. 清理DVC本地缓存与追踪记录

如果dvc.yaml不存在,先在项目根目录重新初始化DVC(不会覆盖现有配置):

dvc init

然后标记目标文件为已删除并更新DVC记录:

dvc rm data/jsons/creds.json
dvc commit

最后清理远程缓存中不再被追踪的文件:

dvc gc -r gcs --workspace

内容的提问来源于stack exchange,提问作者EUDES FILHO

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 22:58:23