我最近开始使用phabricator.我正在使用Arcanist CLI将差异提交给phabricator.直到昨天工作正常,今天每当我尝试创建新版本或更新现有版本时,它都会抛出错误.
这是我用来更新修订版的命令 D3
arc diff --update D3
Run Code Online (Sandbox Code Playgroud)
在我输入注释后,它会抛出以下异常
Linting...
No lint engine configured for this project.
Running unit tests...
No unit test engine is configured for this project.
Usage Exception: No changes found. (Did you specify the wrong commit range?)
Run Code Online (Sandbox Code Playgroud)
你们知道可能出现什么问题吗?
我需要在Phabricator安装中为一个项目和多个用户获取PHID.看起来如何做到这一点似乎应该是微不足道的,但我搜索文档无济于事.我在错误的地方看什么?
我在phabricator中为开发分支创建了评论,更新了几次,然后推动分支进行测试.检查未完成,但phabricator自动关闭它.
我可以创建另一个差异评论,但所有评论和更新都将在旧...
那么有没有办法重新开启封闭式审核?
我在Phabricator(使用Git)中有一个开放的版本,并且我使用该arc diff命令向此修订提交了一个diff .
问题是这个差异是坏的,所以我想撤消它并回到之前的差异.
你知道我该怎么办?
如何将phabricator配置为仅lint匹配的文件*py?
以下是我的.arclint文件:
{
"linters": {
"pylint": {
"type": "pylint",
"include": "(\\.py$)"
}
}
}
Run Code Online (Sandbox Code Playgroud)
这主要基于以下示例:https: //secure.phabricator.com/book/phabricator/article/arcanist_lint/
当我运行它时,我得到了这个:
$ arc lint
No paths are lintable.
Run Code Online (Sandbox Code Playgroud)
如果我删除include行,它会尝试lint每个文件,所以它必须是正则表达式的错误:"(\\.py$)"说实话,这对我来说很奇怪,但正是我在示例中找到的.而且"(*.py)","*.py"和"^*.py$"都是无效的正则表达式.
我正在尝试配置一个phabricator实例,我发现在我们使用时更改arcanist默认模板arc diff对团队非常有用.
实际上模板包含这个文本:
<<Replace this line with your Revision Title>>
Summary:
Test Plan:
Reviewers:
Subscribers:
# Tip: Write "Fixes T123" in your summary to automatically close the
# corresponding task when this change lands.
# NEW DIFFERENTIAL REVISION
# Describe the changes in this new revision.
#
# arc could not identify any existing revision in your working copy.
# If you intended to update an existing revision, use:
#
# $ arc diff --update <revision>
Run Code Online (Sandbox Code Playgroud)
我正在谷歌搜索找到任何方法来更改此默认模板,但我找不到它...
有什么方法可以"个性化"这个模板吗?
我正在尝试为Phabricator配置SSH以使git运行.我已经按照这个手册,但是当我打电话时,echo {} | ssh git@phabricator.mydomain.com conduit conduit.ping我总是得到一个空的结果或Permission denied (publickey,keyboard-interactive)..
/etc/ssh-phabricator/sshd_config:
AuthorizedKeysCommand /usr/libexec/ssh-phabricator-hook
AuthorizedKeysCommandUser git
Port 22
Protocol 2
PermitRootLogin no
AllowAgentForwarding no
AllowTcpForwarding no
PrintMotd no
PrintLastLog no
PasswordAuthentication no
AuthorizedKeysFile none
Run Code Online (Sandbox Code Playgroud)
/etc/passwd:
phd:x:999:999::/var/tmp/phd:/bin/false
git:x:1005:1005::/home/git:/bin/bash
Run Code Online (Sandbox Code Playgroud)
/etc/shadow:
phd:!:16135::::::
git:NP:16135:0:99999:7:::
Run Code Online (Sandbox Code Playgroud)
/etc/sudoers:
git ALL=(phd) SETENV: NOPASSWD: /usr/bin/git-upload-pack, /usr/bin/git-receive-pack, /bin/false
Run Code Online (Sandbox Code Playgroud)
~/.ssh/config:
Host phabricator.mydomain.com
HostName phabricator.mydomain.com
Port 22
IdentityFile /c/Users/.../.ssh/id_rsa_phabricator
PreferredAuthentications publickey
User git
Run Code Online (Sandbox Code Playgroud)
UPDATE
我的问题的原因是:
git用户有一个shell.我尝试了连续集成工具Travis CI,CircleCI和codeship,但发现它们都没有为phabricator提供支持文档.有没有人有关于如何与Phabricator进行持续集成(CI)的想法?
我正在尝试覆盖使用fastcgi_pass时传递给基于php的应用程序(特别是Phabricator)的http主机头.
我在使用proxy_pass时发现了很多这样做的例子,但我似乎无法找到如何使用fastcgi_pass执行此操作的示例.具体来说,我希望代理的php应用程序将主机头看作"phabricator.localhost".
(这样做的原因是我想将几个不同的域与Phabricator webapp相关联,但它只允许一个域关联,并且它拒绝任何未创建该域的请求.)
我很擅长用FastCGI配置Nginx,所以我不确定fastcgi的工作原理.任何帮助表示赞赏.
这是我的Nginx服务器配置:
server {
server_name phabricator.localhost www.example.com example.com;
root /opt/phabricator/phabricator/webroot;
location / {
index index.php;
rewrite ^/(.*)$ /index.php?__path__=/$1 last;
}
location = /favicon.ico {
try_files $uri =204;
}
location /index.php {
fastcgi_pass localhost:9000;
fastcgi_index index.php;
#### HERE ARE MY ATTEMPTS #####
#proxy_set_header HOST phabricator.localhost;
#fastcgi_param SERVER_NAME phabricator.localhost;
#fastcgi_pass_header 'Host: phabricator.localhost';
#fastcgi_pass_header 'Host: phabricator.localhost';
#add_header Host phabricator.localhost;
#proxy_set_header Host phabricator.localhost;
#### END ATTEMPTS ####
fastcgi_param REDIRECT_STATUS 200;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD …Run Code Online (Sandbox Code Playgroud) 我在ubuntu上成功安装了phabricator但是当我注册了管理员用户空白页面时出现了.即使我尝试使用./bin/auth recover user恢复用户,但它无效.它只显示登录页面,然后显示白色空白页面.即使我必须清除浏览器缓存以再次查看登录页面.请帮忙.