WebTools Git/es

Descripción
Este comando permite gestionar el documento actual con GIT. GIT es un potente sistema de control de versiones de archivos, que puede gestionar diferentes versiones de archivos y hacer un seguimiento de los cambios.

Git es una herramienta compleja, considere la posibilidad de aprender los fundamentos de la misma antes de utilizar esta herramienta, para evitar operaciones erróneas que pueden causar la pérdida de datos. Hay una abundante literatura sobre GIT disponible y fácil de encontrar en Internet.

Requisito:''' Para poder utilizar este comando, el paquete gitpython debe estar instalado en tu sistema. En la mayoría de las distribuciones de linux, gitpython está disponible en los repositorios de software estándar como gitpython o python-git.

Utilización

 * 1) Asegúrate de que la Vista de informe está abierta ya que los mensajes Git se imprimirán allí.
 * 2) Guarda el documento activo actual asegurándote de que el archivo guardado está dentro de un repositorio git existente. Puede estar en un subdirectorio.
 * 3) Seleccionar el menú
 * 4) Esto abre un Panel de tareas en la Vista combo.

Opciones



 * El botón Registro abrirá un diálogo mostrando las entradas de registro más recientes. La salida corresponde a.
 * El botón Refrescar volverá a escanear el repositorio en busca de archivos modificados. Después de guardar su trabajo tiene que hacer un refresco manual.
 * El botón Diff mostrará las diferencias entre la versión actual de un archivo seleccionado y la versión más reciente almacenada en el repositorio. La salida corresponde a.
 * Por defecto se hace un diff binario, hay que configurar la herramienta  para hacer un diff textual.
 * El botón Seleccionar todo seleccionará todos los archivos a ser confirmados.
 * El botón Confirmar confirmará los archivos seleccionados. Asegúrese de escribir un mensaje de confirmación que describa los cambios que está confirmando.
 * El botón Pull descargará cualquier nuevo cambio en el repositorio desde el remoto seleccionado. Si el archivo actualmente abierto en FreeCAD está siendo modificado por un pull, un mensaje de advertencia te informará para que puedas guardar el archivo de nuevo o guardarlo en otro lugar.
 * El botón Empujar subirá su(s) última(s) confirmación(es) al remoto seleccionado.

Limitaciones

 * La herramienta no puede crear nuevos repositorios todavía. Debe tener un repositorio local ya creado. (FreeCAD comprobará si el archivo del documento actual está dentro de un repositorio Git).
 * La herramienta no puede cambiar o crear ramas. Debes hacerlo manualmente con las herramientas Git estándar.

Habilitación de diffs legibles por humanos para archivos FCStd con la utilidad fcinfo
FreeCAD's FCStd file format is a zip-based binary format, for which Git cannot produce proper diffs. This means that you cannot see what has changed between one version and another, and also that each new version stored in the Git repository is a full copy of the file.

Although the second problem currently has no solution, the first one can be solved with a little tool available from the FreeCAD source code, called fcinfo. Git can be told to use the fcinfo utility to print a human-friendly report of a FCStd file, and, when asked to produce a diff between two FCStd files, will produce a diff between the two fcinfo reports instead. Please note that this is only visual feedback, a full copy of the file will still be stored internally.

Ejemplo de un diff producido con fcinfo:

Each FreeCAD file contains a SHA1 checksum number, which will change each time the file is saved, even if no contents was changed. So fcinfo will always print something, no matter of the contents changes.

To enable the use of fcinfo (Linux and Mac only - TODO: add Windows instructions)

*.FCStd diff=fcinfo Add the following lines to the  file in your home directory: [diff "fcinfo"] textconv = /path/to/fcinfo Alternatively, if you want to invoke fcinfo with arguments (e.g., ) use this approach : [diff "fcinfo"] textconv = sh -c '/path/to/fcinfo --gui "$0"'
 * 1) Save the fcinfo file somewhere in your system path
 * 2) Make it executable
 * 3) Create a   file in your Git repository and add the following line in it: