C#からgitコマンドを実行したい。以下は私が書いたコードで、gitコマンドを実行しますが、戻り値を取得できません。コマンドラインから手動で実行すると、これが出力になります。
私がプログラムから実行するとき、私が得る唯一のものは
Cloning into 'testrep'...
残りの情報はキャプチャされませんが、コマンドは正常に実行されます。
class Program
{
static void Main(string[] args)
{
ProcessStartInfo startInfo = new ProcessStartInfo("git.exe");
startInfo.UseShellExecute = false;
startInfo.WorkingDirectory = @"D:\testrep";
startInfo.RedirectStandardInput = true;
startInfo.RedirectStandardOutput = true;
startInfo.Arguments = "clone http://tk1:tk1@localhost/testrep.git";
Process process = new Process();
process.StartInfo = startInfo;
process.Start();
List<string> output = new List<string>();
string lineVal = process.StandardOutput.ReadLine();
while (lineVal != null)
{
output.Add(lineVal);
lineVal = process.StandardOutput.ReadLine();
}
int val = output.Count();
process.WaitForExit();
}
}