¿Por qué Android Studio puede ejecutar algunos commands de Git, pero la UI arroja un NPE que intenta hacer una fusión?

Pude usar Android Studio IDE para extraer el proyecto del repository, agregar files modificados, confirmarlos, ver el estado / loggings. Pero cuando trato de volver al mismo repository remoto (twig principal, el único que está allí), recibo un post de error como este:

6:31:30 PM No se pudieron save los cambios no confirmados. Intenté save los cambios no confirmados en el alijo antes de la Actualización, pero falló con un error. file stash: // C: / Users / mejohnsn / AndroidStudioProjects / SylloGizmo: fatal: 'stash' parece ser un command git, pero no éramos 6:31:31 PM NullPointerException: null

Parece que está tratando de decir que 'stash' parece un command legítimo de git, pero en realidad no podría encontrarlo. No es que entienda dónde está encontrando cambios no confirmados o por qué ignora .gitignore, pero estos son probablemente problemas secundarios.

También recibí una presentación emergente de Toast like para reportar el error IDE a Google, lo que finalmente hice. No puedo include eso, porque desaparece demasiado rápido, no puedo recordar la fraseología. Pero el problema real es que, mientras tanto, necesito una solución alternativa. ¿Debo intentar rebase en lugar de combinar? ¿Hay algo incompleto sobre la integración de AS Git cuando se ejecuta en Windows sin Cygwin?

Información del sistema: Windows 10, AS ver. 2.2.3, JRE: 1.0.0_76-release-b03 amd64 (¿por qué AMD? Esta es una máquina Intel) JVM OpenJDK 64-Bit Server de JetBrains.

En mi experiencia, es mejor utilizar el cliente UI Git dedicado ya que son mucho más ricos en funciones y más fáciles de usar. Recomiendo dar una oportunidad a SourceTree, ya que el cliente basado en UI le permite ver claramente las líneas commit / branch / merge.

SourceTree se ve como una de las mejores GUI, pero todavía era confuso tratar de descubrir qué significaba el código de color y qué twig intentaba fusionar con qué onclick en "fusionar". Pero hice una extracción y una fusión de la GUI, luego, decepcionado por la salida de la GUI, volví a la línea de command (usando el 'Terminal' de SourceTree) e hice el impulso desde allí. Ahora el resultado del estado de git de línea de command tiene sentido, y veo más o less lo que espero a través de la interfaz web de Github. Sí, hay dos commits en lugar de uno, pero mientras lo último sea correcto (y lo es), no me importa.

Ah, y en lugar de New Repo> Add Repo local existente ", hice File> Open y encontré el repository local deseado en mi sistema. Eso pareció hacer lo correcto.