- Setup Arcanist to not modify the Git history
Please review https://secure.phabricator.com/phame/post/view/766/write_review_merge_publish_phabricator_review_workflow/ to understand why Phabricator defaults to mutate the history (and why it might not be a good idea to change that).
I've already read that, but this is not exactly the problem. I'm not against pre-commit review and I understand the benefits, the problem is that Arcanists messes with my commits. The goal of a commit is to represent an idea, a modification. Currently Arcanist squashes every commit as one, effectively breaking this. Cherry-picking becomes impossible, and it's a pain to create a new revision that branches from an already existing one, because the first that is merged will be squashed, which will cause a big merge later when trying to squash the other one.
Now, this doesnt change anything about arc diff and all : you can still arc diff to create a differential, etc. What it changes is that the Git stays pure and untouched.
I'm not requesting a change in the workflow... Now, I also understand that squashing makes the history more readable, and that something of the size of Facebook might be interested by it. This is not our case, and we do not gain anything from deleting "checkpoint" commits, which we mostly don't have anyway. Commits are what they are, I don't think it's a good idea to try to redefine it.