Как определить, какие пути используются для кэша композитора? - PullRequest
3 голосов
/ 24 сентября 2019

https://getcomposer.org/doc/06-config.md#cache-dir

Есть ли способ проверить, какие пути он на самом деле использует?

И, во-вторых, документация не верна - у меня нет ~/cacheсправочник ИЛИ $XDG_CACHE_HOME/composer ...

1 Ответ

2 голосов
/ 24 сентября 2019

Если вы ищете свою глобальную конфигурацию композитора, вы можете использовать команду config:

composer config --global --list

Пример вывода из моего док-контейнера:

$ 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)

Возможно, вы пропустили последнюю часть документации, хотя:

cache-dir

По умолчанию C:\Users\<user>\AppData\Local\Composer в Windows, $XDG_CACHE_HOME/composer в системах Unix, которые следуютБазовый каталог XDG и $home/cache в других системах Unix.Хранит все кэши, используемые Composer. См. Также COMPOSER_HOME .

Источник: https://getcomposer.org/doc/06-config.md#cache-dir, Акцент мой.

Итак, яПодумайте, здесь вы пропустили $home/cache, чтобы быть ~/cache, когда оно на самом деле $COMPOSER_HOME/cache

Из моего док-контейнера все еще, которые подтверждают папку /tmp/cache, созданную командой config:

$ echo $XDG_CACHE_HOME

$ echo $home

$ echo $COMPOSER_HOME
/tmp

Короче говоря, если установлено, $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

Как вы можете видеть здесь, после сброса $COMPOSER_HOME, я получаю дом моего пользователя(root, это было бы плохой практикой для композитора, но я нахожусь на докере, для демонстрации).

Так что вы должны прочитать в

По умолчанию он указывает на (...) /home//.composer

Источник: https://getcomposer.org/doc/03-cli.md#composer-home

Is

Byпо умолчанию , когда переменная не установлена ​​, она указывает на (...) /home//.composer

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...