Git: Add Run() with line receiver callback

Signed-off-by: Johan 't Hart <johanthart@gmail.com>
Rebase: Auto-skip commits already in upstream

This should resolve issue #2086

Signed-off-by: Johan 't Hart <johanthart@gmail.com>