Desajuste de la base del cygheap de error de Cygwin / Git detectado

He instalado dos serveres de Windows con las últimas versiones de cygwin y git, y estoy intentando clonar el repository de git de S1 a S2. Puedo pasar de S2 a S1 con éxito usando las teclas RSA, pero cuando hago esto: git clone "ssh: // root @ S1 / path / to / my / repo" Devuelve este resultado:

Cloning into /cygdrive/c/program files/apache software foundation/apache2.2/htdocs/myfolder... 2 [main] git 2004 C:/cygwin/lib/git-core/git.exe *** fatal error - cygheap base mismatch detected - 0x61242860/0x6123790. This problem is probably due to using incompatible versions of the cygwin DLL. Search fro cygwin1.dll using the WIndows Start->Find/Search facility and delete all bu the most recent version. The most recent version *should* reside in x:\cygwin\bin, where 'x' is the drive on which you have installed the cygwin distrubtion. Rebooting is also suggested if you are unable to find another cygwin DLL. --5 more errors like that one -- remote: Counting objects: 3275, done. remote: Compressing oobjects: 100% (3106/3106), done. fatal: write error: Broken pipe 

Entonces seguí estas instrucciones, pero no tuve suerte. ¿Alguna sugerencia?

Yo tuve el mismo problema.

Acabo de reiniciar mi PC y funcionó de nuevo.

No ayuda a encontrar la razón del problema, pero al less puede seguir trabajando.

EDIT: encontré la solución.

TL; DR: vaya a la carpeta GitHub AppData, elimine la carpeta PortableGit y reinicie GitHub

  1. Cerrar GitHub
  2. Navegue a la carpeta GitHub AppData: C:\Users\[username]\AppData\Local\GitHub
  3. Elimine la carpeta que comienza con PortableGit y termina en una cadena aleatoria de letras y numbers
  4. Reinicie GitHub. ¡Volverá a extraer los dlls y el problema debería solucionarse!

(Original "respuesta") Probé un montón de cosas, y no tengo idea de qué funcionó realmente al final. Reinicí GitHub, reinicié mi computadora, desinstalé y reinstalé GitHub, desinstalé varios otros progtwigs que había instalado recientemente pero terminé sin necesitar, eliminé la carpeta GitHub en el directory AppData \ Local, descargué e instalé cygwin, y posiblemente algunas otras cosas que Olvidando

El último bash fue encontrar todos los files cygwin1.dll en File Explorer y cambiarles el nombre a cygwin1x.dll y luego reiniciar mi computadora. Después de que hice eso, funcionó de nuevo.

Estoy arriesgándome a adivinar aquí, pero voy a decir que la descarga e installation de Cygwin y luego reiniciar mi computadora hicieron el truco.

No mencionas esto en tu statement del problema, pero supongo que estás ejecutando una versión de Windows de 64 bits. Cygwin tiene problemas al ejecutar Windows de 64 bits, especialmente con progtwigs grandes. Creo que esto se debe a problemas de administración de memory dentro de la biblioteca de soporte cygwin1.dll. Parece que está haciendo la suposition insoportable de que siempre y para siempre se asignará a la misma dirección en cada process, por lo que está bien que mantenga cosas específicas del process (como direcciones de montón) en variables globales de todo el sistema.

En mi abundante time libre, he estado tratando de rastrear las partes problemáticas. Mientras tanto, podrías intentar volver a basar cygwin1.dll. Ten en count que es mucho más complicado de lo que debe ser, incluso más complicado que volver a basar todo lo demás.

¿Obtiene este error con otros commands? Con git --version ?

Intente volver a ejecutar Cygwin setup.exe y cygwin1.dll instalar su cygwin1.dll (el package es "cygwin", en "Base") y su package git (package "git" en "Devel") y reinicie.

Para mí, la causa fue que git no se instaló a través de cygwin, aunque la descarga regular de git-scm. Una vez que ejecuté la configuration de cygwin, agregué git, funcionó perfectamente.

Para mí, el problema era la existencia de una carpeta C: \ cygwin64 anterior. Renombrar esta carpeta no fue suficiente. Cuando borré esta carpeta, el problema desapareció. No necesité reiniciar después de eliminar la carpeta C: \ cygwin64 tampoco.

Como se trata de un desajuste de base, podrías intentar volver a establecer la base:

 git rebase <branch>