¿Hay algún buen cliente multiplataforma, Mac, Win32, * nix, GIT GUI?

También debería ser compatible con SSH2 y authentication de key pública para principiantes. en segundo lugar, en Mac / Windows debería tener un instalador decente.

A partir de 2011 …

Es una vieja pregunta, pero sigue siendo muy relevante. En los últimos años he tenido que trabajar en proyectos en varias plataforms usando casi todos los sistemas de control de versiones. Aunque en última instancia encuentro que nada supera la security y la conveniencia de conocer bien la command-line, la realidad es que una GUI decente realmente ayuda con la visualización y una GUI realmente buena te ayuda a no cometer errores absurdos.

Siempre he tratado de aprovechar al máximo las ofertas de código abierto, pero llega un momento en el que comienzas a apreciar un poco de brillo adicional en el producto porque (a) te cansas y realmente solo quieres concentrarte en sacar tu propio producto la puerta y (b) te cansas de explicar las cosas a los miembros más jóvenes del equipo y, por lo tanto, solo quieres que la experiencia con herramientas sea lo más suave y sin problemas posible.

Mientras trabajamos para que nuestra propia aplicación de iPhone salga, inicialmente nos decidimos por SourceTree porque es una excelente GUI y también es compatible con Mercurial, que me encanta. En mi opinión, SourceTree vale la pena el precio y no te arrepentirás de haberlo usado.

Sin embargo, haber liderado un equipo que incluye una gama de experiencia de desarrolladores junior a muy experimentados en un proyecto multiplataforma que involucra …

  • iOS (XCode en Mac OS X)
  • Windows Azure y ASP.NET backend (Visual Studio en Windows)

… se volvió frustrante tener que tener configuraciones de configuration separadas y traducir mentalmente entre SourceTree en Mac y TortoiseGit en Windows.

Y luego descubrimos SmartGit . Y chico, oh chico, me encanta SmartGit.

SmartGit cuesta $ 70, pero creo que vale la pena el precio en términos de aumento de productividad y problemas que ahorrará para la mayoría de los miembros del equipo. Es un excelente cliente de Git con una interfaz de usuario pulida y pulida que se destaca por sí misma y se ha convertido en mi favorito, pero cuando se ve el hecho de que se ejecuta en Windows / Mac / Linux, la propuesta de valor para el equipo exponencialmente Nos encanta el amor amor no tener que usar diferentes clientes para diferentes plataforms.

Hay una característica de asesino para SmartGit en comparación con cualquier otra herramienta de GUI que he usado para Git. Hacemos un uso intensivo de los submodules de Git. Si no conoce o no utiliza submodules, esto no se aplicará a usted. Pero si lo hace, apreciará lo inteligente que es SmartGit. Ninguna otra herramienta GUI Git que he usado se acerca.

Son advertencias:

  1. Tuvimos problemas con un repository que se inicializó con TortoiseGit utilizando keys privadas de RSA. SmartGit puede usar el sistema ssh o su propio cliente ssh incorporado que requiere keys privadas de OpenSSH. Como usamos GitHub para nuestro repository remoto, simplemente cambiamos al uso de la URL HTTPS para el repository y todo estaba bien. Sin embargo, para que funcione con Xcode o MonoDevelop en la Mac, solo asegúrese de generar DSA en lugar de RSA para las keys.
  2. SmartGit hace que trabajar con submodules sea extremadamente fácil, pero lo que parece no hacer es inicializar automáticamente los submodules nesteds. En otras palabras, si su submodule hace reference a otros submodules, deberá hacer clic con el button derecho en cada uno de ellos para inicializarlos individualmente.

En última instancia, sin embargo, no creo que haya una verdadera competencia en este momento para una herramienta de GUI de plataforma cruzada de primera class como SmartGit.

Si desea ver mi comparación de las dos mejores herramientas GUI de Git para OS X, lea esta respuesta .

Acabo de empezar a usar qgit y parece bastante agradable. Lo instalé en mi Mac a través de MacPorts , hay un instalador de Windows (no lo he probado) y estoy seguro de que también es fácil de get para Linux.

Otra solución razonable debería ser git-gui , que requiere la installation de un marco Tcl / Tk.