I would recommend SmartGit . Being the pure portability of Java applications between Linux and Windows, this is not a problem. The only requirements are installing JRE and Git.
It supports almost all the important Git commands, the only important feature that is missing in IMO is an interactive reboot. However, normal recovery and merging are supported.
I think SmartGit fulfills all your requirements except (2.), since it does not show any Git commands executed at all.
sebasgo
source share