should check of 'git' executable exists, or a wierd file not found error will occur from subprocess.