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

如何在JFrog Artifactory上传时仅保留源文件夹结构(排除父目录)

问题描述

本地机器目录结构:

c:\git
      \repo
         \myproject
             \build
                \assets
                    \html
                    \js
                    \css

使用以下命令上传制品到Artifactory:

jf rt u "c:\git\repo\myproject\build\*" my-jfrog-repo-generic-local/2023/ --sync-deletes="my-jfrog-repo-generic-local/2023/"

上传后Artifactory生成的目录结构不符合预期,带上了完整本地路径:

my-jfrog-repo-generic-local
     2023
       C:
         git
           repo
             myproject
                build
                   \html
                   \js
                   \css

期望的目标目录结构:

my-jfrog-repo-generic-local
     2023
        build
          \html
          \js
          \css
解决方案

要实现只保留build目录及其子结构上传到目标位置,有两种可行方法:

方法1:通过--base-dir指定基础路径

使用--base-dir参数将c:\git\repo\myproject设为上传的基准目录,然后直接上传build目录。这样JFrog CLI会忽略基准路径之外的层级,仅将build及其子目录传到Artifactory的2023文件夹下:

jf rt u "build" my-jfrog-repo-generic-local/2023/ --base-dir="c:\git\repo\myproject" --sync-deletes="my-jfrog-repo-generic-local/2023/build/"

注意同步删除的路径要调整为my-jfrog-repo-generic-local/2023/build/,确保只清理该目录下的过时文件。

方法2:切换到父目录后执行上传

先通过命令行切换到c:\git\repo\myproject目录,再执行上传命令。此时CLI会以当前目录为基准,直接将build目录传到目标位置:

cd c:\git\repo\myproject
jf rt u "build" my-jfrog-repo-generic-local/2023/ --sync-deletes="my-jfrog-repo-generic-local/2023/build/"

两种方法最终都会生成你期望的目录结构。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 14:47:14