Details
I ran the install shell script on centos 6.5 on 2015.11.03.
I added a remote subversion project (means not created and hosted by phabricator) and checked out svn on another machine. svn is fine, but I tried many times to assign Auditors to some existed phabricator users, and nothing happens on the web ui except the commits. I refered to phabricator_audit.audit_transaction in mysql, there exists records.
And I notice that on the web ui Diffusion application, the commit record is existed while the commit history list is empty. I wonder if I have missed something during the installation.
Thx.
Event Timeline
Auditors: lhfcws, admin
++++++++++++ Seperate Line
just simply like the contents above the separate line.
And both these two phabricator users are existed.
I find that if I choose creating svn repo by phabricator, then audits feature works. Doesn't it support import svn repo from existing directory?
Phabricator supports Audit from hosted or remotely tracked repositories. The repository needs to be done importing and discovery is on new commits only.
https://secure.phabricator.com/book/phabricator/article/audit/#audit-triggers
Thanks for your explanation and the link, I am fully aware that it only responds to new commits only. I've already read the trigger part for times, and it still cannot solve my problems.
If I use the remote svn repo, phabricator warns me that remote svn repo can only support read-only mode instead of read/write. And the commit history is empty, no matter how many times I create new commits. I don't think it is normal. However, I can see the total commit amount and the latest revision changing.
If I use the hosted svn repo, I can clearly see the commit history (Repository and Recent commits in Diffusion) on the web ui. Everything including the audits feature seems fine.
That's why I wonder why remote svn repo doesn't work.
I don't think it is normal
It's not, something is likely misconfigured on setting up Phabricator to read from the remote.
After installing basic software like httpd/mysql/php, I ran the install shell and storage update command, and then restarted mysqld/httpd and phd start. Other configuration issues were configed or fixed under the guidance of admin web ui.
So at first I guessed that problems might occured in phases including permission assignment, svn hooks, svn configuration. The read/write permission and svn conf directory of two repo in the filesystem had no difference, and I copied hooks which generated by phabricator itself from hosted repo to remote repo. Therefore, these three issues above should not be the problems.
I've installed phabricator in two different machines with the same OS CentOS 6.5, and the problems are also the same. Now I am confused where the problems may locate.
Actually, I believe that most of the technical teams basically concerns the requirement of pre-review and post-audit. Maybe what we need is simply a command to push the diff to corresponding repo (both review and audit) and some automatical actions performed on the repo to approve the reviews. I looked up to the commands under phabricator/bin, and could not find the answer. It is not a good solution to make all the users to install arc to replace svn in their own machines. I mean, if phabricator can support features like this, then the developers can easily define their own hooks to do more interesting things.
And still, thanks for this fantastic product.
From the command line you can run bin/repository update REPO --trace for maybe some insight into what's not happening on pulling from the external repo.
It is not a good solution to make all the users to install arc to replace svn in their own machines.
arcanist is a full featured CLI for Phabricator, where git/svn/hg are just raw commands. Even if you are only using arc for code review, the ability to pre-commit lint/unit is invaluable. and arc also can emit patches and amend code without requiring the developer to re-open their IDE for basic lint issues. Fundamentally arcanist reduces time spent coding and time spent reviewing,
The developers may use different tools to use VCS like svn, including IDE-plugins, desktop apps on different OS and so on. Command line is only a kind of the original way to use VCS. Indeed, arc is much more powerful, but less supported by different clients.
I just realized after testing a few versions that the "Auditors: <username>" in the commit message needs to have 1 empty line before it to be triggered. Probably some parsing issue.
@fanis Thanks for ur reply. It's not the reason of the problem. And it is quite weird that this problem will always exist with my test svn, but with my online svn which supports http it works fine. I don't know if there is something that do not support phabricator+svn solution (each of them works fine before combination) and no people including the contributors are aware of this.