【问题标题】:How to change default local repository path in Phabricator?如何更改 Phabricator 中的默认本地存储库路径?
【发布时间】:2018-06-25 19:37:10
【问题描述】:

我正在尝试将我当前的 Phabricator 部署(这是一个 Ubuntu 虚拟机)迁移到基于 docker 的容器。

根据 Phab 的文档,我应该使用以下命令行:

bin/config set --database repository.default-local-path /my/new/path

上面的命令失败了:

Usage Exception: Config key "repository.default-local-path" is locked and can 
only be set in local configuration. To learn more, see "Configuration Guide: 
Locked and Hidden Configuration" in the documentation.

当我尝试没有 --database 上面的命令时,它会更改local.json 并成功。但是,似乎存储在 DB 中的属性优先于 JSON 文件中定义的属性。因此,对 JSON 文件所做的更改没有任何效果。

如果这不是错误,我该如何更改repository.default-local-path?如果是bug,有什么解决办法吗?

【问题讨论】:

    标签: phabricator


    【解决方案1】:

    我不认为“锁定”配置选项应该设置在数据库级别。该值应在本地配置中提供。

    假设您在数据库中设置了一个干扰本地配置的值,我会说这是一个错误。我知道的最简单的解决方法是通过编辑 phabricator 源来解锁配置选项。你需要做的如下:

    1. 解锁配置选项。为此,请在 PhabricatorRepositoryConfigOptions.php 的第 25 行将源代码从 setLocked(true) 更改为 setLocked(false)
    2. local.json 中为repository.default-local-path 设置一个值,就像您已经设法使用bin/config set 一样(省略--database 参数)
    3. 使用以下命令删除数据库值:bin/config delete --database repository.default-local-path
    4. 一旦一切设置正确,您就可以恢复对 PhabricatorRepositoryConfigOptions.php 的更改,这会将选项恢复到锁定状态。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-03
      • 2015-10-20
      • 2022-07-05
      相关资源
      最近更新 更多