GIT

Software captura de pantalla:
GIT
Detalles de software:
Versión: 2.16.0 Actualizado
Fecha de carga: 20 Jan 18
Promotor: Junio C Hamano
Licencia: Libre
Popularidad: 64

Rating: 3.0/5 (Total Votes: 1)

Git es uno de los sistemas de control de versiones distribuidas más ampliamente utilizado, descrito por desarrolladores de todo el mundo como el servicio de VCS número uno. Se ejecuta solo desde la terminal, pero varios frontales están disponibles para su descarga.

Es una aplicación de sistema de control de versiones de código abierto y gratuito que puede manejar proyectos grandes y pequeños con la máxima eficiencia y velocidad. El programa se puede describir fácilmente como pequeño, rápido y distribuido.


Opciones de línea de comando

El programa viene con un puñado de comandos que cualquier persona puede recordar fácilmente desde el principio. Todas las operaciones se realizan localmente y se han diseñado para trabajar en el kernel de Linux.

Los comandos incluidos son add, bisect, branch, checkout, clone, commit, diff, fetch, grep, init, log, merge, mv, pull, push, rebase, reset, rm, show, status y tag. Puede aprender fácilmente qué hace cada comando ejecutando el comando git --help desde una ventana de terminal.


Características de un vistazo

Al usar Git, los usuarios podrán agregar archivos, verificar sucursales o rutas, clonar repositorios, crear repositorios Git vacíos, unir múltiples historias de desarrollo, mostrar el estado del árbol de trabajo, registrar cambios, así como crear, listar o eliminar ramas.

Además, la aplicación permite a los usuarios ver los cambios entre commits y árboles activos, imprimir líneas que coincidan con un patrón, ver registros de commit, descargar refs y objetos, renombrar o mover archivos, symlinks y directorios, actualizar refs remotos y eliminar archivos de un árbol de trabajo.


Varios front-ends gráficos existen

Incluso si se trata de un software de línea de comandos, varias interfaces gráficas de usuario (GUI) están disponibles, incluidas git-cola, SmartGit, GitEye, giggle y gitg. El proyecto supera a las utilidades de SCM (Administración de configuración de software), como CVS, Subversion, ClearCase y Perforce, al contar con sucursales locales baratas, flujos de trabajo múltiples y áreas de etapas convenientes.


Línea de fondo

Resumiendo, Git es un sistema de control de versiones gratuito que ofrece un rendimiento increíblemente rápido, es fácil de aprender y tiene una huella muy pequeña. Con Git puede hacer cambios de contexto sin fricción, líneas de código basadas en roles, flujo de trabajo basado en funciones y experimentación desechable.

Qué hay de nuevo en esta versión:

  • Una función auxiliar para leer una única línea completa en strbuf Error OOM desencadenado erróneamente en EOF bajo ciertas condiciones, que se ha corregido.
  • Además de & quot; cc: # cruft & quot ;, & quot; cc: a@dd.re.ss # cruft & quot; se le enseñó a & quot; git enviar-correo electrónico & quot; como una forma válida de decirle que también necesita enviar una copia de carbón en la sección de tráiler.
  • Corrige la regresión a & quot; gitk --bisect & quot; por una actualización reciente.
  • A diferencia de & quot; git commit-tree & lt; archivo & quot ;, & quot; git commit-tree -F archivo & quot; no pasó el contenido del archivo al pie de la letra y en su lugar completó una línea incompleta al final, si existe. Esta última se ha actualizado para que coincida con el comportamiento de la primera.
  • & quot; git archive & quot ;, especialmente cuando se usa con pathspec, almacena un directorio vacío en su salida, incluso aunque Git nunca lo haga. Esto ha sido arreglado.
  • Prueba de errores de API que también bloquea las advertencias de GCC.
  • & quot; git gc & quot; intenta evitar ejecutar dos instancias al mismo tiempo leyendo y escribiendo pid / host desde y hacia un archivo de bloqueo; solía usar un formato fscanf () incorrecto al leer, que se ha corregido.
  • Al linter de prueba se le ha enseñado que no nos gusta & quot; echo -e & quot;.
  • Código cmp.std.c nitpick.
  • & quot; git describe --match & quot; aprendí a tomar múltiples patrones en la serie v2.13, pero la función ignoró los patrones después de la primera y no funcionó en absoluto. Esto ha sido arreglado.
  • & quot; git cat-file --textconv & quot; comenzó segfaulting recientemente, que se ha corregido.
  • El patrón incorporado para detectar el encabezado de función & quot; para HTML no coincide ... elementos sin ningún atributo, que se ha corregido.
  • & quot; git mailinfo & quot; estaba suelto en la decodificación de la basura imprimible y producida cuando las dos letras después del signo igual no son hexadecimales. Esto ha sido arreglado.
  • La documentación de '-X' para las fusiones se escribió erróneamente para sugerir que & quot; -s theirs & quot; existe, que no es el caso.
  • Deletree el nombre de nuestro sistema como & quot; Git & quot; en el resultado del script request-pull.
  • Correcciones para un puñado de problemas de acceso a la memoria identificados por valgrind.
  • Backports es un equivalente moral de la solución de 2015 a la emulación de encuesta del gnulib ascendente para corregir roturas ocasionales en HPE NonStop.
  • En el & quot; - format = ... & quot; opción del & quot; git para-cada-ref & quot; command (y sus amigos, es decir, el modo de listado de & quot; git branch / tag & quot;), & quot;% (atom:) & quot; (por ejemplo,% (refname:) & quot ;, & quot;% (body:) & quot; usado para error out. En cambio, trátelos como si los dos puntos y una cadena vacía que lo sigue no estuvieran allí.
  • Usuarios con & quot; color.ui = always & quot; en su configuración se rompieron por un cambio reciente que hizo que los comandos de plomería les prestaran atención como el parche creado internamente por & quot; git add -p & quot; fueron coloreadas (heh) y quedaron inutilizables. Esto ha sido arreglado.
  • & quot; rama git -M a b & quot; mientras que en una rama que no está relacionada con ninguna de las ramas a o b se portó mal cuando se usaba el árbol de trabajo múltiple. Esto ha sido arreglado.
  • & quot; git fast-export & quot; con la opción -M / -C emitida & quot; copia & quot; instrucciones en una ruta que se modifica simultáneamente, lo que fue incorrecto.
  • El comando de punto de control & quot; git fast-import & quot; no arrojó actualizaciones a las referencias y marcas a menos que se haya creado al menos un objeto desde el último punto de control, que se ha corregido, ya que estas cosas pueden suceder sin que se cree ningún objeto nuevo.
  • Los scripts para manejar TravisCI se reorganizaron y luego se implementó una optimización para evitar ciclos de gasto en una sucursal cuya etiqueta está etiquetada.
  • & quot; git fetch: & quot; permite un nombre de objeto en el lado cuando el otro lado acepta dicha solicitud desde Git v2.5, pero la documentación quedó obsoleta.
  • Se ha corregido una regresión en 2.11 que hacía que el código para leer la lista de almacenes de objetos alternativos sobrepasara el final de la cadena.

Qué hay de nuevo en la versión 2.15.1:

  • Una función auxiliar para leer una única línea completa en strbuf Error OOM desencadenado erróneamente en EOF bajo ciertas condiciones, que se ha corregido.
  • Además de & quot; cc: # cruft & quot ;, & quot; cc: a@dd.re.ss # cruft & quot; se le enseñó a & quot; git enviar-correo electrónico & quot; como una forma válida de decirle que también necesita enviar una copia de carbón en la sección de tráiler.
  • Corrige la regresión a & quot; gitk --bisect & quot; por una actualización reciente.
  • A diferencia de & quot; git commit-tree & lt; archivo & quot ;, & quot; git commit-tree -F archivo & quot; no pasó el contenido del archivo al pie de la letra y en su lugar completó una línea incompleta al final, si existe. Esta última se ha actualizado para que coincida con el comportamiento de la primera.
  • & quot; git archive & quot ;, especialmente cuando se usa con pathspec, almacena un directorio vacío en su salida, incluso aunque Git nunca lo haga. Esto ha sido arreglado.
  • Prueba de errores de API que también bloquea las advertencias de GCC.
  • & quot; git gc & quot; intenta evitar ejecutar dos instancias al mismo tiempo leyendo y escribiendo pid / host desde y hacia un archivo de bloqueo; solía usar un formato fscanf () incorrecto al leer, que se ha corregido.
  • Al linter de prueba se le ha enseñado que no nos gusta & quot; echo -e & quot;.
  • Código cmp.std.c nitpick.
  • & quot; git describe --match & quot; aprendí a tomar múltiples patrones en la serie v2.13, pero la función ignoró los patrones después de la primera y no funcionó en absoluto. Esto ha sido arreglado.
  • & quot; git cat-file --textconv & quot; comenzó segfaulting recientemente, que se ha corregido.
  • El patrón incorporado para detectar el encabezado de función & quot; para HTML no coincide ... elementos sin ningún atributo, que se ha corregido.
  • & quot; git mailinfo & quot; estaba suelto en la decodificación de la basura imprimible y producida cuando las dos letras después del signo igual no son hexadecimales. Esto ha sido arreglado.
  • La documentación de '-X' para las fusiones se escribió erróneamente para sugerir que & quot; -s theirs & quot; existe, que no es el caso.
  • Deletree el nombre de nuestro sistema como & quot; Git & quot; en el resultado del script request-pull.
  • Correcciones para un puñado de problemas de acceso a la memoria identificados por valgrind.
  • Backports es un equivalente moral de la solución de 2015 a la emulación de encuesta del gnulib ascendente para corregir roturas ocasionales en HPE NonStop.
  • En el & quot; - format = ... & quot; opción del & quot; git para-cada-ref & quot; command (y sus amigos, es decir, el modo de listado de & quot; git branch / tag & quot;), & quot;% (atom:) & quot; (por ejemplo,% (refname:) & quot ;, & quot;% (body:) & quot; usado para error out. En cambio, trátelos como si los dos puntos y una cadena vacía que lo sigue no estuvieran allí.
  • Usuarios con & quot; color.ui = always & quot; en su configuración se rompieron por un cambio reciente que hizo que los comandos de plomería les prestaran atención como el parche creado internamente por & quot; git add -p & quot; fueron coloreadas (heh) y quedaron inutilizables. Esto ha sido arreglado.
  • & quot; rama git -M a b & quot; mientras que en una rama que no está relacionada con ninguna de las ramas a o b se portó mal cuando se usaba el árbol de trabajo múltiple. Esto ha sido arreglado.
  • & quot; git fast-export & quot; con la opción -M / -C emitida & quot; copia & quot; instrucciones en una ruta que se modifica simultáneamente, lo que fue incorrecto.
  • El comando de punto de control & quot; git fast-import & quot; no arrojó actualizaciones a las referencias y marcas a menos que se haya creado al menos un objeto desde el último punto de control, que se ha corregido, ya que estas cosas pueden suceder sin que se cree ningún objeto nuevo.
  • Los scripts para manejar TravisCI se reorganizaron y luego se implementó una optimización para evitar ciclos de gasto en una sucursal cuya etiqueta está etiquetada.
  • & quot; git fetch: & quot; permite un nombre de objeto en el lado cuando el otro lado acepta dicha solicitud desde Git v2.5, pero la documentación quedó obsoleta.
  • Se ha corregido una regresión en 2.11 que hacía que el código para leer la lista de almacenes de objetos alternativos sobrepasara el final de la cadena.

Qué hay de nuevo en la versión 2.15.0:

  • Una función auxiliar para leer una única línea completa en strbuf Error OOM desencadenado erróneamente en EOF bajo ciertas condiciones, que se ha corregido.
  • Además de & quot; cc: # cruft & quot ;, & quot; cc: a@dd.re.ss # cruft & quot; se le enseñó a & quot; git enviar-correo electrónico & quot; como una forma válida de decirle que también necesita enviar una copia de carbón en la sección de tráiler.
  • Corrige la regresión a & quot; gitk --bisect & quot; por una actualización reciente.
  • A diferencia de & quot; git commit-tree & lt; archivo & quot ;, & quot; git commit-tree -F archivo & quot; no pasó el contenido del archivo al pie de la letra y en su lugar completó una línea incompleta al final, si existe. Esta última se ha actualizado para que coincida con el comportamiento de la primera.
  • & quot; git archive & quot ;, especialmente cuando se usa con pathspec, almacena un directorio vacío en su salida, incluso aunque Git nunca lo haga. Esto ha sido arreglado.
  • Prueba de errores de API que también bloquea las advertencias de GCC.
  • & quot; git gc & quot; intenta evitar ejecutar dos instancias al mismo tiempo leyendo y escribiendo pid / host desde y hacia un archivo de bloqueo; solía usar un formato fscanf () incorrecto al leer, que se ha corregido.
  • Al linter de prueba se le ha enseñado que no nos gusta & quot; echo -e & quot;.
  • Código cmp.std.c nitpick.
  • & quot; git describe --match & quot; aprendí a tomar múltiples patrones en la serie v2.13, pero la función ignoró los patrones después de la primera y no funcionó en absoluto. Esto ha sido arreglado.
  • & quot; git cat-file --textconv & quot; comenzó segfaulting recientemente, que se ha corregido.
  • El patrón incorporado para detectar el encabezado de función & quot; para HTML no coincide ... elementos sin ningún atributo, que se ha corregido.
  • & quot; git mailinfo & quot; estaba suelto en la decodificación de la basura imprimible y producida cuando las dos letras después del signo igual no son hexadecimales. Esto ha sido arreglado.
  • La documentación de '-X' para las fusiones se escribió erróneamente para sugerir que & quot; -s theirs & quot; existe, que no es el caso.
  • Deletree el nombre de nuestro sistema como & quot; Git & quot; en el resultado del script request-pull.
  • Correcciones para un puñado de problemas de acceso a la memoria identificados por valgrind.
  • Backports es un equivalente moral de la solución de 2015 a la emulación de encuesta del gnulib ascendente para corregir roturas ocasionales en HPE NonStop.
  • En el & quot; - format = ... & quot; opción del & quot; git para-cada-ref & quot; command (y sus amigos, es decir, el modo de listado de & quot; git branch / tag & quot;), & quot;% (atom:) & quot; (por ejemplo,% (refname:) & quot ;, & quot;% (body:) & quot; usado para error out. En cambio, trátelos como si los dos puntos y una cadena vacía que lo sigue no estuvieran allí.
  • Usuarios con & quot; color.ui = always & quot; en su configuración se rompieron por un cambio reciente que hizo que los comandos de plomería les prestaran atención como el parche creado internamente por & quot; git add -p & quot; fueron coloreadas (heh) y quedaron inutilizables. Esto ha sido arreglado.
  • & quot; rama git -M a b & quot; mientras que en una rama que no está relacionada con ninguna de las ramas a o b se portó mal cuando se usaba el árbol de trabajo múltiple. Esto ha sido arreglado.
  • & quot; git fast-export & quot; con la opción -M / -C emitida & quot; copia & quot; instrucciones en una ruta que se modifica simultáneamente, lo que fue incorrecto.
  • El comando de punto de control & quot; git fast-import & quot; no arrojó actualizaciones a las referencias y marcas a menos que se haya creado al menos un objeto desde el último punto de control, que se ha corregido, ya que estas cosas pueden suceder sin que se cree ningún objeto nuevo.
  • Los scripts para manejar TravisCI se reorganizaron y luego se implementó una optimización para evitar ciclos de gasto en una sucursal cuya etiqueta está etiquetada.
  • & quot; git fetch: & quot; permite un nombre de objeto en el lado cuando el otro lado acepta dicha solicitud desde Git v2.5, pero la documentación quedó obsoleta.
  • Se ha corregido una regresión en 2.11 que hacía que el código para leer la lista de almacenes de objetos alternativos sobrepasara el final de la cadena.

Qué hay de nuevo en la versión 2.14.1:

  • Este lanzamiento reenvía la solución para & quot; ssh: //..." URL de Git v2.7.6

Qué hay de nuevo en la versión 2.9.3:

  • * Una función auxiliar que toma el contenido de un objeto de confirmación y encuentra su línea de asunto no ignora las líneas en blanco delanteras, como comúnmente lo hacen otras rutas de códigos. Haz que ignore las líneas en blanco delanteras para que coincidan.
  • Git no sabe cuál debe ser el contenido del índice para una ruta añadida con "git add -N" todavía, por lo que "git grep --cached" no debería mostrar hits (o mostrar la falta de hits, con -L ) en una ruta de este tipo, pero esa lógica no se aplica a "git grep", es decir, la búsqueda en los archivos de árbol de trabajo. Pero lo hicimos por error, lo cual fue corregido.
  • "git rebase -i --autostash" no restableció el cambio guardado automáticamente cuando se canceló la operación.
  • "git commit --amend --allow-empty-message -S" para una confirmación sin cuerpo de mensaje podría haber identificado erróneamente dónde termina el encabezado del objeto de commit.
  • Más actualizaciones de marcado para cadenas compuestas que el usuario final debe escribir literalmente en una fuente de ancho fijo.
  • Durante mucho tiempo, llevamos un comentario en el código que decía que nuestra salida en color funcionaría solo cuando usáramos fprintf / fputs en Windows, que ya no es el caso en los últimos años.
  • "gc.autoPackLimit" cuando se establece en 1 no debería desencadenar un reempaquetado cuando solo hay un paquete, pero el código contaba mal y lo hizo.
  • Una parte de "git am" tenía una función extraña de ayuda que llamaba cosas de fuera de "su" en lugar de llamar a lo que tenemos "nuestro", que no era de género neutral y también inconsistente con el resto del sistema donde lo de afuera se llama habitualmente "suyo" en contraste con "nuestro".
  • El marco de prueba aprendió un nuevo helper test_match_signal para verificar que un código de salida no sea destruido por una señal esperada.
  • "git culpable -M" omitió una sola línea que se movió dentro del archivo.
  • Corrige los recorridos de código introducidos recientemente que están involucrados en operaciones paralelas de submódulos, que dejaron de leer demasiado pronto y podrían haber desperdiciado la CPU al intentar escribir en una situación de esquina.
  • "git grep -i" se ha enseñado a doblar la caja en lugares que no son ascii correctamente.
  • Una prueba que utilizó incondicionalmente "mktemp" descubrió que el comando no está necesariamente disponible en todas partes.
  • "archivo de culpa de git" permitió que se inspeccionara el linaje de líneas en el contenido no entregado y no agregado de "archivo", pero se rechazó cuando "archivo" no apareció en la confirmación actual. Cuando se creó "archivo" al renombrar un archivo existente (pero el cambio no se ha confirmado), esta restricción fue innecesariamente estricta.
  • "git add -N dir / file & amp; & amp; git write-tree" produjo un árbol incorrecto cuando hay otras rutas en el mismo directorio que ordena después de "archivo".
  • "git fetch http: // user: pass @ host / repo ..." restregó la parte de userinfo, pero "git push" no.
  • Se corrigió un error antiguo que causaba un comportamiento incorrecto de "git diff --ignore-space-at-eol".
  • "git notes merge" tenía un código para ver si existe una ruta (y falla si lo hace) y luego abre la ruta para escribir (cuando no lo hace). Reemplácelo con abierto con O_EXCL.
  • "git pack-objects" y "git index-pack" operan principalmente con off_t cuando se habla de la compensación de objetos en un archivo de paquete, pero había un puñado de lugares que usaban "unsigned long" para mantener ese valor, lo que a un truncamiento involuntario.
  • La actualización reciente a "git daemon" intenta habilitar el nivel de socket KEEPALIVE, pero cuando se genera a través de inetd, el descriptor de archivo de entrada estándar no necesariamente se puede conectar a un socket. Suprima un error ENOTSOCK de setsockopt ().
  • Recent FreeBSD dejó de hacer perl disponible en / usr / bin / perl; cambie la ruta predeterminada a / usr / local / bin / perl en versiones de FreeBSD no demasiado antiguas.
  • "estado de git" aprendió a sugerir "merge --abort" durante una fusión en conflicto, al igual que ya sugiere "rebase --abort" durante una rebase en conflicto.
  • Las fuentes .c / .h están marcadas como tales en nuestro archivo .gitattributes para que "git diff -W" y sus amigos funcionen mejor.
  • La prueba autoconf generada existente para la necesidad de vincular con la biblioteca pthread no verificó todas las funciones de las bibliotecas pthread; FreeBSD reciente tiene algunas funciones en libc pero no otras, y erróneamente pensamos que vincular con libc es suficiente cuando no lo es.
  • Permitir pruebas http daemon en pruebas de Travis CI.
  • Los usuarios de la función API parse_options_concat () necesitan asignar ranuras adicionales por adelantado y completarlas con OPT_END () cuando quieren decidir dinámicamente el conjunto de opciones admitidas, lo que hace que el código sea propenso a errores y difícil de leer. Esto se ha corregido ajustando la API para asignar y devolver una nueva copia de la matriz "struct opcion".
  • El uso de strbuf en "git rm" para construir el nombre de archivo para eliminar era un poco subóptimo, que se ha corregido.
  • "git commit --help" dijo "--no-verify" solo salta el enlace precompromiso, y no pudo decir que también omitió el enlace commit-msg.
  • "git merge" en Git v2.9 se le enseñó a prohibir la fusión de líneas de historia no relacionadas por defecto, pero eso es exactamente el tipo de cosas que el modo "--rejoin" de "subárbol de git" (en contrib /) quiere hacer. "subárbol de git" se ha enseñado a utilizar la opción "--permitir historias no relacionadas" para anular el valor predeterminado.
  • El procedimiento de compilación para el helper "git persistente-https" (en contrib /) se ha actualizado para que pueda compilarse con versiones más recientes de Go.
  • Hay una optimización utilizada en "git diff $ treeA $ treeB" para tomar prestada una copia ya desprotegida en el árbol de trabajo cuando se sabe que es igual a la burbuja que se compara, esperando que open / mmap de tal un archivo es más rápido que leerlo desde el almacén de objetos, lo que implica inflar y aplicar delta. Sin embargo, esto se inició incluso cuando la copia desprotegida necesita pasar por la conversión de convertir a GIT (incluido el filtro limpio), lo que frustra todo el punto de la optimización. La optimización se ha desactivado cuando la conversión es necesaria.
  • "git -c grep.patternType = log extendido --basic-regexp" se comportó mal porque la API interna para acceder a la maquinaria grep no se diseñó bien.
  • El puerto de Windows fallaba algunas pruebas en t4130, debido a la falta de inum en los valores devueltos por su emulación lstat (2).
  • Los caracteres en la etiqueta que se muestra para las etiquetas / refs para confirmaciones en la salida "gitweb" ahora están escapados correctamente para una salida HTML adecuada.
  • FreeBSD puede mentir cuando se le pide mtime de un directorio, lo que hace que el código de caché no rastreado vuelva a una ruta lenta, lo que a su vez hace que las pruebas en t7063 fallen porque quiere verificar el comportamiento de la ruta rápida.
  • Advertencias del compilador de silenciamiento para la biblioteca de netmalloc (en compat /).
  • La documentación de API para hashmap no estaba clara si hashmap_entry se puede descartar de forma segura sin ninguna otra consideración. Indique que es seguro hacerlo.
  • Una reescritura no tan reciente de "git am" que comenzó a realizar llamadas internas en la maquinaria de confirmación tuvo una regresión involuntaria, ya que no importaba cuántos segundos tardara en aplicar muchos parches, la marca de tiempo del committer resultante para los commits resultantes eran todos iguales.
  • "git difftool ..." iniciado en un subdirectorio no pudo interpretar las rutas relativas a ese directorio, que se ha corregido.

Qué hay de nuevo en la versión 2.9.1:

  • Cuando se ejecuta "git daemon" sin - [init-] timeout especificado, una conexión de un cliente que se desconecta silenciosamente puede permanecer por mucho tiempo, desperdiciando recursos. El nivel de socket KEEPALIVE se ha habilitado para permitir que el sistema operativo detecte tales conexiones fallidas.
  • Los comandos en la familia `git log` toman% C (auto) en una cadena de formato personalizado. Esto activó incondicionalmente el color, ignorando --no-color o con --color = auto cuando la salida no está conectada a un tty; esto se corrigió para que el formato se comportara realmente como "automático".
  • "git rev-list --count" cuya longitud de caminata es limitada con la opción "-n" no funcionó bien con el recuento optimizado para ver el índice de mapa de bits.
  • "git show -W" (ampliar hunks para cubrir toda la función, delimitada por líneas que coinciden con el patrón "funcname") utilizado para mostrar el archivo completo cuando un cambio agrega una función completa al final del archivo, que ha sido arreglado.
  • El conjunto de documentación se ha actualizado para que los comandos literales, las variables de configuración y las variables de entorno se compongan de forma consistente en fuentes de ancho fijo y en negrita en las páginas de manual.

  • El
  • subcomando "git svn propset" que se agregó en 2.3 días está documentado ahora.
  • La documentación intenta deletrear consistentemente "GPG"; cuando se hace referencia al nombre del programa específico, se usa "gpg".
  • "git reflog" se detuvo al ver una entrada que denota un evento de creación de sucursal (también conocido como "unborn"), lo que hizo que pareciera que el reflog se truncó.
  • El scriptlet de git-prompt (en contrib /) no era amigable con quienes usan "set -u", que se ha corregido.
  • Se ha actualizado una ruta de código que utilizó alloca (3) para colocar una cantidad ilimitada de datos en la pila para evitar hacerlo.
  • "git update-index --add --chmod = + x file" puede ser usado como un escape, pero no es algo amigable para las personas que necesitan usarlo regularmente. "git add --chmod = + x file" se puede usar en su lugar.
  • Mejoras de compilación para gnome-keyring (en contrib /)
  • "estado de git" solía decir "directorio de trabajo" cuando significaba "árbol de trabajo".
  • Los comentarios sobre el mal funcionamiento de los shells de FreeBSD se han aclarado con el número de versión (9.x y antes están rotos, los más nuevos están bien).
  • "git cherry-pick A" trabajó en una rama no nacida, pero "git cherry-pick A..B" no.
  • "git add -i / -p" aprendido a reconocer diff.compactionPulsión experimental heurística, para que el usuario pueda trabajar en la misma división hunk como salida "git diff".
  • "log --graph --format =" descubrió que "% & gt; | (N)" especifica el ancho relativo al borde izquierdo de la terminal, no relativo al área para dibujar el texto que está a la derecha de la ascendencia sección del gráfico Ahora también acepta N negativa que significa que el límite de la columna es relativo al borde derecho.
  • La regla de propiedad para la pieza de memoria que contiene las referencias que deben obtenerse en "git fetch" fue incorrecta, que se ha limpiado.
  • "git bisect" realiza una llamada interna a "git diff-tree" cuando la bisección encuentra al culpable, pero esta llamada no inicializó la estructura de datos para pasarla a la API de diff-tree correctamente.
  • Se documentaron los formatos de los diversos datos (y cómo validarlos) donde usamos la firma GPG.
  • Corrige una regresión involuntaria en v2.9 que rompe "clone --depth" que recurre a los submódulos al forzar a los submódulos a ser clonados superficialmente, lo que muchas instancias de servidor que alojan aguas arriba de los submódulos no están preparados.
  • Arregla el desperdicio innecesariamente en el uso idiomático de ': $ {VAR = default}' para establecer el valor predeterminado, sin incluirlo entre comillas dobles.
  • Algunos códigos específicos de plataforma tenían declaraciones estrictas que no son ANSI de funciones C que no toman ningún parámetro, que se corrigió.
  • El código interno utilizado para mostrar el desfase de la zona horaria local no está preparado para manejar marcas de tiempo posteriores al año 2100, y dio un valor de compensación falso a la persona que llama. Use en su lugar un +0000 más benigno y deje que "log log" funcione en ese caso, en lugar de abortar.
  • Una de cada cuatro invocaciones de readlink (1) en nuestro conjunto de pruebas se ha reescrito para que la prueba se pueda ejecutar en sistemas sin el comando (otros están en valgrind test framework y t9802).
  • t / perf necesita / usr / bin / time con extensión GNU; la invocación se actualiza a "gtime" en Darwin.
  • Se ha corregido un error que causaba que "git p4" se ejecutara en modo detallado para informar de rutas que se omiten debido a un prefijo de bifurcación incorrecto; el comando decía "Ignorar archivo fuera del prefijo" para rutas que son _inside _.
  • La documentación de nivel superior "git help git" aún apuntaba al conjunto de documentación alojado en el repositorio de código de Google ahora desaparecido. Actualízalo para que apunte a https://git.github.io/htmldocs/git.html en su lugar.

Qué hay de nuevo en la versión 2.9.0:



Nuevo en GIT 2.8.1 (5 de abril de 2016)

Qué hay de nuevo en la versión 2.8.1:


    El objetivo
  • "make rpmbuild" se rompió debido a que su entrada, git.spec.in, no se actualizó para que coincida con un archivo que describe que se ha renombrado recientemente. Esto ha sido arreglado.

Qué hay de nuevo en la versión 2.7.3:

  • Tradicionalmente, las pruebas que prueban comandos que funcionan en los contenidos en el árbol de trabajo fueron nombradas con "worktree" en sus nombres de archivo, pero con la reciente adición del subcomando "git worktree", cuyas pruebas también se nombran de manera similar, tiene se vuelve más difícil distinguirlos. Las pruebas tradicionales se han renombrado para usar "árbol de trabajo" en su lugar en un intento de diferenciarlas.
  • Muchos recorridos de código se olvidan de verificar el valor de retorno de git_config_set (); la función está hecha para morir () para asegurarse de que no procedamos cuando falla la configuración de una variable de configuración.
  • El manejo de errores al escribir en nuestro proceso asincrónico interno se ha vuelto más sólido, lo que reduce la falta de precisión en nuestras pruebas.
  • "git show" HEAD: Foo [BAR] Baz '"no interpretó el argumento como un rev, es decir, el objeto nombrado por el nombre de ruta con caracteres comodín en un objeto de árbol.
  • "git rev-parse --git-common-dir" usado en la característica del árbol de trabajo se comporta mal cuando se ejecuta desde un subdirectorio.
  • El subcomando "v (iew)" del comando interactivo "git am -i" se rompió en el marco de tiempo 2.6.0 cuando el comando se reescribió en C.
  • "git merge-tree" utilizado para manipular incorrectamente "ambos lados agregó" conflicto con el suyo "crear un archivo antecesor falso que tiene las partes comunes de lo que ambos lados han agregado y hacer una fusión de 3 vías" lógica; esto se ha actualizado para usar el enfoque usual "fusión de 3 vías con una burbuja vacía como el antecesor común falso" utilizado en el resto del sistema.
  • La regla de propiedad de memoria de la API fill_textconv (), que era un poco complicada, se documentó un poco mejor.
  • La documentación no indicaba claramente que el modo 'simple' ahora es el predeterminado para "git push" cuando la configuración de push.default no está configurada.
  • Las versiones recientes de grep de GNU son más exigentes cuando su entrada contiene datos binarios arbitrarios, que algunas de nuestras pruebas usan. Reescribe las pruebas para eludir el problema.
  • Se ha corregido una función auxiliar "submódulo git" desde v2.7.0 para enumerar los módulos que coinciden con el argumento pathspec dado a sus subcomandos (por ejemplo, "submodule add").
  • "git config section.var value" para establecer un valor en el archivo de configuración por repositorio falló cuando se ejecutó fuera de cualquier repositorio, pero no dijo el motivo correctamente.
  • El código para leer los datos del paquete utilizando los desplazamientos almacenados en el archivo idx del paquete se ha realizado con más cuidado para verificar la validez de los datos en idx.

Qué hay de nuevo en la versión 2.7.2:

  • Se ha enseñado a la maquinaria de fusión de bajo nivel a utilizar la terminación de línea CRLF cuando se insertan marcadores de conflicto en contenidos fusionados que son por sí mismos CRLF terminados en línea.
  • "git worktree" tenía un código roto que intentaba reparar automáticamente la posible incoherencia que resulta de los usuarios finales que mueven un árbol de trabajo a diferentes lugares sin decirle a Git (el repositorio original necesita mantener backpointers en sus árboles de trabajo, pero "mv" dirigido por usuarios finales que no están familiarizados con ese hecho, obviamente, no los ajustará), lo que empeoró las cosas cuando se activaron.
  • "git push --force-with-lease" se le ha enseñado a informar si el impulso necesario para forzar (o reenviar).
  • El comando "sí" emulado utilizado en nuestros scripts de prueba ha sido modificado para no perder demasiado tiempo generando resultados innecesarios que no se usan, para ayudar a aquellos que prueban en Windows donde no se detiene hasta que llena el buffer de tuberías debido a falta de SIGPIPE.
  • El backend de vimdiff para "git mergetool" ha sido modificado para organizar y numerar búferes en el orden que coincida con la expectativa de la mayoría de las personas que leen de izquierda a derecha, luego hacia arriba y asignar buffers 1 2 3 4 "mentalmente" a las ventanas de combinación remotas base locales basadas en ese orden.
  • La documentación para "git clean" ha sido corregida; mencionó que .git / modules / * se eliminan dando dos "-f", que nunca ha sido el caso.
  • Las rutas a las que se les ha dicho que el índice con "agregar -N" aún no están en el índice, pero algunos comandos se comportaron como si ya lo fueran de manera perjudicial.
  • También incluye una pequeña documentación y actualizaciones de prueba.

Qué hay de nuevo en la versión 2.6.4:

  • La secuencia de comandos "configure" no probó correctamente -lpthread, lo que molestó a algunos vinculadores.
  • Agregue compatibilidad para hablar http / https sobre socks proxy.
  • Corrección de portabilidad para Windows, que puede reescribir la variable $ SHELL utilizando rutas que no sean POSIX.
  • Ahora permitimos sistemáticamente que todos los enganches ignoren su entrada estándar, en lugar de que git se queje de SIGPIPE.
  • Corrige las cotizaciones de shell en el script contrib.
  • Corrección de portabilidad de prueba para un tema en v2.6.1.
  • Permitir expansión de tilde en algunas variables de configuración http.
  • Proporcione un caso especial útil "diff / show --word-diff-regex =". como un ejemplo en la documentación.
  • Corrección para un caso de esquina en filter-branch.
  • Haz que git-p4 funcione en una cabeza separada.
  • Aclaración de documentación para "ignorar-verificar" sin "--verbose".
  • Al igual que el árbol de trabajo se limpia cuando el usuario canceló el envío en P4Submit.applyCommit (), solucione el problema si falla "p4 submit".
  • Tener un archivo .idx sobrante sin el correspondiente archivo .pack en el repositorio perjudica el rendimiento; "git gc" aprendió a podarlos.
  • El código para preparar el lado del árbol de trabajo del directorio temporal para la característica "dir-diff" olvidó que los enlaces simbólicos no necesitan copiarse (o enlazarse) al área temporal, ya que el código ya sobrescribe casos especiales y sobrescribe ellos. Además, era un error intentar calcular el nombre del objeto del objetivo del enlace simbólico, que ni siquiera existe o puede ser un directorio.
  • No había forma de derrotar una variable rebase.autostash configurada desde la línea de comando, ya que "git rebase --no-autostash" faltaba.
  • Permita que "git interpret-trailers" se ejecute fuera de un repositorio de Git.
  • Produce el marcador "sucio" correcto para las indicaciones del intérprete de comandos, incluso cuando estamos en una rama huérfana o no nacida.
  • Algunos casos de esquina se han solucionado en la coincidencia de cadenas realizada en "estado de git".
  • La implementación criptográfica común de SHA1_Update () de Apple no requiere más de 4 GB a la vez, y ahora tenemos una solución en tiempo de compilación para ello.

Qué hay de nuevo en la versión 2.5.3:

  • La característica experimental de caché no rastreada tenía errores cuando se trata de rutas con algunos niveles de subdirectorios.
  • Las versiones recientes de "git am" con guión tienen una regresión de rendimiento en la ruta de código "git am - skip", que ya no existe en la versión incorporada en el frente "maestro". Corrija la regresión en la última versión con script que aparece en la pista de mantenimiento 2.5.x y anterior.

Qué hay de nuevo en la versión 2.4.6:

  • "git fetch --depth =" y "git clone --depth =" emitió una solicitud de transferencia superficial incluso a un paquete de carga que no admite la capacidad.
  • "git fsck" se usa para ignorar objetos perdidos o no válidos grabados en reflog.
  • La finalización de tcsh escribe un scriptlet de bash, pero eso habría fallado para los usuarios con el conjunto de noclobber.
  • Las actualizaciones recientes de Mac OS X rompen la lógica para detectar que la máquina tiene alimentación de CA en el script de muestra pre-auto-gc.
  • "git format-patch --ignore-if-upstream A..B" no desea recibir etiquetas alimentadas a medida que se confirma el límite.
  • También contiene tipofixes, actualizaciones de documentación y código trivial
  • limpiezas.

Qué hay de nuevo en la versión 2.4.2:

  • "git rev-list --objects $ old --not --all" para ver si todo lo que es alcanzable desde $ old ya está conectado a los refs existentes fue muy ineficiente.
  • "hash-object - literalmente" presentado en v2.2 no estaba preparado para tomar un nombre de tipo de objeto realmente largo.
  • "git rebase --quiet" no estaba muy tranquilo cuando no hay nada que hacer.
  • La finalización del valor del parámetro "log --decorate =" fue incorrecta.
  • mensaje de registro de compromiso corrupto "branch-branch" que termina con una línea incompleta en las plataformas con algunas implementaciones "sed" que mandan dicha línea. Solucionarlo evitando usar "sed".
  • "git daemon" no puede compilar desde el origen en la configuración NO_IPV6 (regresión en 2.4).
  • "git stash pop / apply" se olvidó de asegurarse de que no solo el árbol de trabajo esté limpio, sino que el índice esté limpio. Esto último es importante ya que una aplicación oculta puede entrar en conflicto y el índice se usará para la resolución de conflictos.
  • Hemos añadido $ GIT_EXEC_PATH y la ruta "git" está instalada en (típicamente "/ usr / bin") en $ PATH al invocar subprogramas y enganches casi por la eternidad, pero el caso de uso original que este último intentó admitir fue semi -bogus (es decir, instalar git en / opt / foo / git y ejecutarlo sin tener / opt / foo en $ PATH), y lo que es más importante, se ha vuelto menos y menos relevante a medida que Git creció más corriente (es decir, los usuarios querrían tener en su $ PATH). Deje de anteponer la ruta en la que se instala "git" a $ PATH de los usuarios, ya que eso interferiría en el orden de búsqueda de comandos del que dependen (por ejemplo, pueden no gustarle las versiones de programas que no están relacionados con Git en / usr / bin y quieren anularlos teniendo diferentes en / usr / local / bin y tener el último directorio antes en $ $ PATH).
  • También contiene tipofixes, actualizaciones de documentación y limpiezas triviales de códigos.

Programas parecidos

gitrecipe
gitrecipe

15 Apr 15

bzr-pqm
bzr-pqm

20 Feb 15

infrae.i18nextract
infrae.i18nextract

20 Feb 15

Comentarios a la GIT

Comentarios que no se encuentran
Añadir comentario
A su vez en las imágenes!