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

Docker挂载路径异常:Git Bash下出现\Git\app如何解决?

Git Bash下Docker挂载目录出现\Git\app的问题解决

问题场景

在Git Bash中执行Docker挂载命令:

winpty docker run  -v $(pwd):/app alpine ls

意图将宿主机当前目录挂载到容器内/app目录,但执行后ls输出出现\Git\app,而非预期的app;但在PowerShell中执行docker run -v ${PWD}:/app alpine ls时输出正常。

\Git\app是什么

这是Git Bash的路径自动转换机制导致的异常。Git Bash基于MSYS环境,会自动将Windows路径转换为类Unix路径,但在结合winpty和Docker命令时,路径转换逻辑出现错误——它把$(pwd)输出的当前目录路径,错误处理成了相对于Git安装目录的相对路径,最终被Docker解析成了容器内部的一个名为\Git\app的目录,而非挂载宿主机的目录。

修复方案

以下几种方法都可以解决这个问题:

  • 用双引号包裹路径并添加前缀转义
    在Git Bash中执行:

    winpty docker run -v "/$(pwd):/app" alpine ls
    

    通过/$(pwd)强制Git Bash输出正确的绝对路径格式,避免异常转换。

  • 临时禁用路径转换
    借助MSYS_NO_PATHCONV环境变量阻止Git Bash的路径转换,执行命令:

    MSYS_NO_PATHCONV=1 winpty docker run -v $(pwd):/app alpine ls
    
  • 直接使用绝对路径
    手动输入当前目录的Windows绝对路径替代$(pwd),例如:

    winpty docker run -v "C:\your\current\directory:/app" alpine ls
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 01:55:18