I've created in git extension buttons to execute next script for phabracator: Command: C:\Windows\System32\cmd.exe Arguments: /c start bash.exe --login -i -c "arc diff --trace; read -p\"Finished! Press Enter\" "
It worked fine on other machines but now on laptop I'm receiving next error:
←[1m←[45m ARGV ←[49m←[m "C:/Arcanist/arcanist/bin/../scripts/arcanist.php" "diff " "--trace" ←[1m←[45m LOAD ←[49m←[m Loaded "phutil" from "C:\Arcanist\libphutil\src". ←[1m←[45m LOAD ←[49m←[m Loaded "arcanist" from "C:\Arcanist\arcanist\src". Config: Reading user configuration file "C:\Users\someUser\AppData\Roaming/.a rcrc"... Config: Did not find system configuration at "C:\ProgramData\Phabricator/Arcanis t/config". Working Copy: Reading .arcconfig from "C:\d\Git\15.1.1\Foundation/.arcconfig". Working Copy: Path "C:\d\Git\15.1.1\Foundation" is part of `git` working copy "C :\d\Git\15.1.1\Foundation". Working Copy: Project root is at "C:\d\Git\15.1.1\Foundation". Config: Did not find local configuration at "C:\d\Git\15.1.1\Foundation\.git\arc /config". >>>  <conduit> user.whoami() <bytes = 117> >>>  <http> http://someAddress.lab.local/api/user.whoami <<<  <http> 1,549,000 us <<<  <conduit> 1,552,000 us >>>  <exec> $ git diff --no-ext-diff --no-textconv --raw "HEAD" -- >>>  <exec> $ git ls-files --others --exclude-standard <<<  <exec> 40,999 us <<<  <exec> 50,999 us >>>  <exec> $ git diff-files --name-only [2017-01-15 20:11:29] EXCEPTION: (CommandException) Command failed with error #1 ! COMMAND git diff --no-ext-diff --no-textconv --raw "HEAD" -- STDOUT (empty) STDERR 'git' is not recognized as an internal or external command, operable program or batch file. at [<phutil>\src\future\exec\ExecFuture.php:369] arcanist(head=master, ref.master=ade25facfdf2), phutil(head=master, ref.master=9 d85dfab0f53) #0 ExecFuture::resolvex() called at [<arcanist>\src\repository\api\ArcanistGit API.php:686] #1 ArcanistGitAPI::buildUncommittedStatus() called at [<arcanist>\src\reposito ry\api\ArcanistRepositoryAPI.php:142] #2 ArcanistRepositoryAPI::getUncommittedStatus() called at [<arcanist>\src\rep ository\api\ArcanistRepositoryAPI.php:211] #3 ArcanistRepositoryAPI::getUncommittedPathsWithMask(integer) called at [<arc anist>\src\repository\api\ArcanistRepositoryAPI.php:186] #4 ArcanistRepositoryAPI::getIncompleteChanges() called at [<arcanist>\src\wor kflow\ArcanistWorkflow.php:841] #5 ArcanistWorkflow::requireCleanWorkingCopy() called at [<arcanist>\src\workf low\ArcanistDiffWorkflow.php:691] #6 ArcanistDiffWorkflow::runDiffSetupBasics() called at [<arcanist>\src\workfl ow\ArcanistDiffWorkflow.php:467] #7 ArcanistDiffWorkflow::run() called at [<arcanist>\scripts\arcanist.php:394] Finished! Press Enter
When I'm also trying to land something using script from git extension I'm receiving similar exception. All needed system variables are set. It seems to me that there is some problem with windows path encoding. I had broken arc version, but now I've fixed it according to T8821 . But that fix didn't helped with arc diff from git extension. When I'm running arc diff from console it works fine, but when it is done by script from git extension it is broken. Please help.