Fix issue 2235. Allow the user to pick Git.exe no matter
where it is installed on their system.
Check ValidSvnWorkindDir before do svn commands. Method GitSvnCommandHelpers.ValidSvnWorkindDir work not correct on submodule repo
fix-2266 Del shortcut key in the commit dialog
Fix git fetch --tags not working
Merge pull request #2321 from linquize/fetch--tags

Fix git fetch --tags not working
Browsing history in revision grid

closes #1800
Remove ANSI sequence from the captured output lines
Merge branch 'pr/n2236_PhilipDaniels'

Conflicts:
	GitUI/CommandsDialogs/SettingsDialog/CheckSettingsLogic.cs
	GitUI/CommandsDialogs/SettingsDialog/Pages/GitSettingsPage.cs
Merge branch 'pr/n2237_lynxstv'

Conflicts:
	GitCommands/Git/GitSvnCommandHelpers.cs
DownloadExternals.cmd fixed
Introduce GitCmdResult struct, RunCmdResult(), RunGitCmdResult() methods
Ignore stderr from gitflow branch list
git flow support start must specify base commit
Merge pull request #2348 from linquize/no-stderr

RunCmd(), RunGitCmd() can ignore stderr
Update README.md
Update README.md
There is no difference between null and empty result. string.Empty is safer in use.
Stop runaway git process creation under MS Windows

https://github.com/gitextensions/gitextensions/pull/1286/ tried to fix
this problem, but the solution doesn't work under MS Windows 7.

Module.IsRunningGitProcess() invokes "ps" to try to look for git
processes, but under MS Windows 7, the only two processes that are ever
seen are "/bin/sh" and "/bin/ps", i.e. the processes involved with the
"ps" request itself.  Therefore, the test fails, and if MS Visual Studio
builds in the same git repo being watched by Git Extensions, an
explosion of git processes grinds the machine to a halt quickly.

I don't know how to fix Module.IsRunningGitProcess() under MS Windows;
it seems that the existing technique isn't applicable to MS Windows, and
isn't repairable.  Until a better solution comes along, I simply
restored part of the solution that was removed by the above-referenced
pull request.  This solves the problem for me.

I've only noticed this with one particular repo, and with MS Visual
Studio 2012.  It seems like I should have seen this long ago.
Go figure.

(cherry picked from commit c1f8ee7b65019fe7596a7d71fd4ad750043d6b53)
Cover the case when update ends with error.
Stop runaway git process creation under MS Windows

https://github.com/gitextensions/gitextensions/pull/1286/ tried to fix
this problem, but the solution doesn't work under MS Windows 7.

Module.IsRunningGitProcess() invokes "ps" to try to look for git
processes, but under MS Windows 7, the only two processes that are ever
seen are "/bin/sh" and "/bin/ps", i.e. the processes involved with the
"ps" request itself.  Therefore, the test fails, and if MS Visual Studio
builds in the same git repo being watched by Git Extensions, an
explosion of git processes grinds the machine to a halt quickly.

I don't know how to fix Module.IsRunningGitProcess() under MS Windows;
it seems that the existing technique isn't applicable to MS Windows, and
isn't repairable.  Until a better solution comes along, I simply
restored part of the solution that was removed by the above-referenced
pull request.  This solves the problem for me.

I've only noticed this with one particular repo, and with MS Visual
Studio 2012.  It seems like I should have seen this long ago.
Go figure.

(cherry picked from commit c1f8ee7b65019fe7596a7d71fd4ad750043d6b53)
(cherry picked from commit a893525df7524b6a78bdafc23ed40a9778cd49d2)