How to have Craft 3 and 2 on same host? I have a Craft 2 installation that I'm upgrading to Craft 3. 

I've got v3 running locally in its own virtual host, but now I need to temporarily put the dev v3 instance in the same hosting account as the live v2, with the v3 instance resolving at a dev subdomain:

account root
    craft              &lt;-- v2 system
    craft              &lt;-- v3 executable
    config … templates &lt;-- other v3 dependencies
    public_html        &lt;-- live web root
    dev                &lt;-- dev web root


Given the naming conflict between the v2 system folder and the v3 executable, can I exclude the v3 executable and have v3 still run?

Or can I put all the v3 stuff in its own folder still above web root and then tell the dev index.php where to find it? It's not clear to me from the doc on customising directory structure that I can do that.

I know there is a doc on moving Craft files but that focuses on moving into web root (in my case, dev web root), which I don't want to do.
Both the craft/ folder name in Craft 2, and the craft executable in Craft 3, can be renamed.

Since the craft executable is user-facing (when SSH’d in), I’d recommend leaving that alone and rename your craft/ folder to something else, maybe craft2/. Then in public_html/index.php, update your $craftPath variable to point to the new location:

$craftPath = '../craft2';