https://getcomposer.org/doc/06-config.md#cache-dir
有没有办法可以验证它实际使用的路径?
其次,文档似乎无效 - 我没有任何~/cache目录或$XDG_CACHE_HOME/composer......
如果您正在寻找全局作曲家配置,您可以使用以下config命令:
composer config --global --list
Run Code Online (Sandbox Code Playgroud)
我的 docker 容器的示例输出:
$ composer config --global --list | grep cache
[cache-dir] /tmp/cache
[cache-files-dir] {$cache-dir}/files (/tmp/cache/files)
[cache-repo-dir] {$cache-dir}/repo (/tmp/cache/repo)
[cache-vcs-dir] {$cache-dir}/vcs (/tmp/cache/vcs)
[cache-ttl] 15552000
[cache-files-ttl] 15552000
[cache-files-maxsize] 300MiB (314572800)
Run Code Online (Sandbox Code Playgroud)
不过,您可能错过了文档的最后部分:
缓存目录
C:\Users\<user>\AppData\Local\Composer在 Windows、$XDG_CACHE_HOME/composer遵循 XDG 基本目录规范的 UNIX 系统以及$home/cache其他 Unix 系统上默认为。存储 Composer 使用的所有缓存。另请参见COMPOSER_HOME。
来源: https: //getcomposer.org/doc/06-config.md#cache-dir,重点是我的。
所以我想,你错过$home/cache了~/cache真正的时候$COMPOSER_HOME/cache
仍然从我的 docker 容器中确认/tmp/cacheconfig 命令引发的文件夹:
$ echo $XDG_CACHE_HOME
$ echo $home
$ echo $COMPOSER_HOME
/tmp
Run Code Online (Sandbox Code Playgroud)
因此,简而言之,如果设置,则$COMPOSER_HOME优先:
$ echo $COMPOSER_HOME
/tmp
$ unset COMPOSER_HOME
$ echo $COMOPSER_HOME
$ composer config -gl | grep 'cache-dir'
[cache-dir] /root/.composer/cache
[cache-files-dir] {$cache-dir}/files (/root/.composer/cache/files)
[cache-repo-dir] {$cache-dir}/repo (/root/.composer/cache/repo)
[cache-vcs-dir] {$cache-dir}/vcs (/root/.composer/cache/vcs)
$ echo $HOME
/root
$ whoami
root
Run Code Online (Sandbox Code Playgroud)
正如你在这里看到的,取消设置后$COMPOSER_HOME,我最终得到了我的用户的主页(这里是 root,这对于作曲家来说是一个不好的做法,但我在 docker 上进行演示)。
那么你应该读什么
默认情况下它指向 (...) /home/<user>/.composer
来源: https: //getcomposer.org/doc/03-cli.md#composer-home
是
默认情况下,当变量未设置时,它指向 (...) /home/<user>/.composer