Non-Terminating Process Git Bash (C#)

As a fun little project, I am trying to use C# to operate the bash.exe provided by Git. I want the process to behave just as if I ran it in the Git Bash Application. By this, I mean I want to be able to execute command and get the output of said commands (i.e. if I enter the command “curl –version”, I want to get the same output as the image here and be able to store it in a variable)

I have come very close to accomplishing this with the code here. However, with some commands, I find that the Process in C# never terminates. For example, if I try to execute the command “curl –help”, I find the the Process never exits where “curl –version” did. As a quick hack, I figured out that I could fix this by changing the command to

curl --help >> output.txt 

and then reading the .txt file. This does cause the command to exit and to write the correct output to the file, however, I don’t like having to do this and I am sure there is a better solution to make commands of this sort exit properly. Thanks for the help!

Git Baby is a git and github fan, let's start git clone.