ASP.NETページでシェルアウトしてgitコマンドを実行したい。私はコマンドを動作するbatファイルに入れました:
REM cd to the git repo folder
cd c:\temp\mygitrepo
"c:\Program Files\Git\Bin\git.exe" show c090dc4b8b1b3512c1b5363c371e21d810d02f54 -- myfile.txt
cmdプロンプトから.batファイルを実行しても、問題ありません。System.Diagnostics.Process.Startを使用して実行すると、次のエラーが発生します:
RUNTIME_PREFIXが要求されましたが、プレフィックスの計算に失敗しました。静的フォールバックの使用
エラーは次のgitファイルから発生しています:http://github.com/git/git/blob/master/exec_cmd.c
私はsvn.exeコマンドを実行するためにまったく同じ手法を使用していますが、問題ありません。
編集1:ここのスレッドから、 msysgitがすべてのユーザーではなく、現在のユーザーである私に関連付けられた場所にいくつかのファイルをインストールすることを学びました。IISWebサーバーは別のユーザーアカウントで実行されています。.gitconfigなど、目を引いたgitファイルの一部を他のユーザー([ドキュメントと設定])にコピーしてみました。運がない。そのため、私は、IISがgitコマンドを起動したときに私になりすますようにすることに焦点を移しました。