Opciones y preferencias de Git en Visual Studio

En Visual Studio, puede configurar y visualizar las opciones y preferencias comunes de Git, como su nombre y dirección de correo electrónico, las herramientas preferidas de comparación y fusión mediante combinación, etc. Estas opciones y preferencias se pueden ver y configurar en el cuadro de diálogo Opciones de la página de configuración global de Git (se aplica a todos los repositorios) o en la página de configuración de repositorios de Git (se aplica al repositorio actual).

Puede configurar dos tipos de opciones:

  • Opciones de Git: las opciones de esta sección se corresponden con las opciones de Git que están guardadas en los archivos de configuración de Git. Estas opciones puede verse y modificarse en Visual Studio, pero se administran mediante archivos de configuración de Git.
  • Opciones de Visual Studio: las opciones de esta sección configuran las preferencias y opciones relacionadas con Git que administra Visual Studio.

Cómo configurar los valores

  1. Para configurar las opciones de Git en Visual Studio, elija Configuración en el menú de Git de nivel superior.

    The Git menu with a callout to the Settings command.

  2. Elija Git Global Settings (Configuración global de Git) o Configuración de repositorios de Git para ver y configurar la configuración global o de nivel de repositorio.

    The navigation pane in the Options dialog box with a callout to Git settings.

  3. Puede configurar varias opciones comunes de Git, como se describe en las secciones siguientes de este artículo. Después de configurar las opciones deseadas, seleccione Aceptar para guardar la configuración actualizada.

    The display area of the Options dialog box with a callout to the OK button.

Configuración de Git

También puede configurar y comprobar algunas de las opciones de configuración de Git más comunes. Puede ver y modificar las opciones siguientes en Visual Studio, aunque se administran mediante archivos de configuración de Git.

Nota

Las opciones de Git establecidas en la configuración global de Visual Studio se corresponden con las opciones del archivo de configuración específico del usuario de Git, mientras que las opciones de configuración de repositorios se corresponden con las opciones del archivo de configuración específico del repositorio. Para obtener más información sobre la configuración de Git, consulte el capítulo de Git para profesionales sobre la personalización de Git, la documentación de git-config y la referencia de Git para profesionales sobre archivos de configuración. Para configurar las opciones de Git que no están expuestas en Visual Studio, use el comando git config para escribir un valor en los archivos de configuración: git config [--local|--global|--system] section.key value.

Nombre y correo electrónico

El nombre y el correo electrónico que proporcione se usarán como información del confirmador para cualquier confirmación que realice. Esta opción está disponible en ámbitos globales y de repositorio, y se corresponde con las opciones user.name y user.email de git config.

  1. En el menú de Git, vaya a Configuración. Para establecer el nombre de usuario y el correo electrónico en el nivel global, vaya a Git Global Settings (Configuración global de Git); para establecer el nombre de usuario y el correo electrónico en el nivel de repositorio, vaya a Configuración de repositorios de Git.

  2. Proporcione el nombre de usuario y el correo electrónico y seleccione Aceptar para guardar.

    Git Global settings pane in Options dialog box with a callout to username an email.

Eliminación de ramas remotas durante la captura

La eliminación quita ramas de seguimiento remotas que ya no existen en el origen remoto y permite mantener la lista de ramas limpia y actualizada. Esta opción está disponible en ámbitos globales y de repositorio, y se corresponde con la opción fetch.prune de git config.

Se recomienda establecer esta opción en True en el nivel global. Los valores válidos son los siguientes:

  • True (recomendado)
  • False
  • Sin establecer (predeterminado)

A continuación se indica cómo cambiar los valores:

  1. En el menú de Git, vaya a Configuración. Vaya a Git Global Settings (Configuración global de Git) para configurar esta opción en el nivel global; vaya a Configuración de repositorios de Git para configurar esta opción en el nivel de repositorio.

  2. Establezca Eliminar ramas remotas durante la captura en True (recomendado). Seleccione Aceptar para guardar.

    Screenshot that shows 'Prune remote branches during fetch' highlighted and with 'True' selected from the drop-down.

Fusión de la rama local mediante cambio de base al enviar cambios

Con la fusión mediante cambio de base, se separan los cambios realizados mediante confirmaciones en la rama actual que no se encuentran en la rama ascendente, se restablece la rama actual en la rama ascendente y, después, se aplican los cambios que se separaron. Esta opción está disponible en ámbitos globales y de repositorio, y se corresponde con la opción fetch.prune de git config. Los valores válidos son los siguientes:

  • True: fusione la rama actual mediante cambio de base en la parte superior de la rama ascendente después de la captura.

  • False: fusione la rama actual mediante combinación en la rama ascendente.

  • Sin establecer (valor predeterminado): a menos que se especifique en otros archivos de configuración, fusione la rama actual mediante combinación en la rama ascendente.

  • Interactivo: fusione mediante cambio de base en modo interactivo.

  • Combinaciones: fusione mediante cambio de base sin acoplar confirmaciones de combinación creadas localmente.

    Nota

    En la versión 17.2 de Visual Studio 2022, hemos cambiado la opción "Conservar" a "Combinaciones" para que coincida con una actualización reciente de Git. Por lo tanto, si usa una versión anterior de Visual Studio con herramientas de Git, la interfaz de usuario podría mostrar "Conservar" en lugar de "Combinaciones". Aun así, la funcionalidad sigue siendo la misma.

A continuación se indica cómo cambiar los valores:

  1. En el menú de Git, vaya a Configuración. Vaya a Git Global Settings (Configuración global de Git) para configurar esta opción en el nivel global; vaya a Configuración de repositorios de Git para configurar esta opción en el nivel de repositorio.

  2. Establezca Fusionar la rama local mediante cambio de base al enviar cambios en la opción deseada y seleccione Aceptar para guardar.

    Screenshot that shows 'Rebase local branch when pulling' highlighted and 'Merges' selected from the drop-down.

No es posible configurar pull.rebase en Interactivo en Visual Studio. Visual Studio no tiene compatibilidad con la fusión mediante cambio de base interactiva. Para configurar pull.rebase de modo que use el modo interactivo, use la línea de comandos.

Proveedor de la red criptográfica

El proveedor de la red criptográfica es una opción de configuración de Git de ámbito global que configura qué back-end TLS/SSL se debe usar en tiempo de ejecución, y se corresponde con la opción http.sslBackend de git config. Los valores son los siguientes:

  • OpenSSL: use OpenSSL para protocolos TLS y SSL.
  • Canal seguro: use Secure Channel (SChannel) (Canal seguro [SChannel]) para protocolos TLS y SSL. SChannel es la solución nativa de Windows, que accede al Almacén de credenciales de Windows, lo que permite la administración de certificados en toda la empresa.
  • Sin establecer (valor predeterminado): si esta opción no está establecida, el valor predeterminado es OpenSSL.

A continuación se indica cómo cambiar los valores:

  1. En el menú de Git, vaya a Configuración. Vaya a Git Global Settings (Configuración global de Git) para configurar esta opción.

  2. Establezca Proveedor de la red criptográfica en el valor deseado y seleccione Aceptar para guardar.

    Screenshot that shows 'Cryptographic network provider' highlighted with 'OpenSSL' selected from the drop-down.

Aplicación auxiliar de credenciales

Cuando Visual Studio realiza una operación de Git remota, el punto de conexión remoto podría rechazar la solicitud porque requiere que se proporcionen credenciales con la solicitud. En ese momento, Git invoca una aplicación auxiliar de credenciales, que devuelve las credenciales necesarias para realizar la operación y, a continuación, volverá a intentar la solicitud. La aplicación auxiliar de credenciales usada se corresponde con la opción credential.helper de git config. Está disponible en el ámbito global con los valores siguientes:

  • GCM para Windows: use el Administrador de credenciales de Git para Windows como aplicación auxiliar.
  • GCM Core: use el Administrador de credenciales de Git Core como aplicación auxiliar.
  • Sin establecer (valor predeterminado): si esta opción no está establecida, se usa la aplicación auxiliar de credenciales establecida en la configuración del sistema. A partir de Git para Windows 2.29, la aplicación auxiliar de credenciales predeterminada es GCM Core.

A continuación se indica cómo cambiar los valores:

  1. En el menú de Git, vaya a Configuración. Vaya a Git Global Settings (Configuración global de Git) para configurar esta opción.

  2. Establezca Credential helper (Aplicación auxiliar de credenciales) en el valor deseado y seleccione Aceptar para guardar.

    Screenshot showing the credential helper setting in the Options dialog box.

Herramientas de comparación y fusión mediante combinación

Git mostrará las comparaciones y los conflictos de combinación en las herramientas que usted prefiera. Las opciones de esta sección se corresponden con las opciones diff.tool y merge.tool de git config. Puede configurar Git para usar Visual Studio como herramienta de comparación o fusión mediante combinación en Git Global Settings (Configuración global de Git) y Configuración de repositorios de Git. Para ello, seleccione Usar Visual Studio. Para configurar otras herramientas de comparación y fusión mediante combinación, use git config con el modificador diff.tool o merge.tool.

Screenshot that shows the section to set default Diff tool and Merge tool in the Options dialog box.

Archivos de Git

Puede usar la sección Git files (Archivos de Git) en el ámbito Configuración de repositorios de Git para ver y editar los archivos gitignore y gitattributes del repositorio.

Screenshot that shows the section to view and edit the Ignore and attributes files in your repository.

Remotas

Puede usar el panel Remotos en Configuración de repositorios de Git para configurar los orígenes remotos para el repositorio. Esta opción se corresponde con el comando git remote y permite agregar, editar o quitar orígenes remotos.

Screenshot showing the Git Remotes pane in the Options dialog box.

Otra configuración

Para ver todas las demás opciones de configuración de Git, abra y consulte los archivos de configuración, o bien ejecute git config --list para mostrar la configuración.

Configuración de Visual Studio

Las opciones siguientes administran las preferencias relacionadas con Git en Visual Studio y se administran mediante Visual Studio, en lugar de archivos de configuración de Git. Todas las opciones de esta sección se configuran en la página de configuración global de Git.

Ubicación predeterminada

La opción Ubicación predeterminada permite configurar la carpeta predeterminada en la que se clonan los repositorios.

Screenshot showing the default location field in the Options dialog box.

Cierre de las soluciones abiertas que no estén en Git al abrir un repositorio

De forma predeterminada, Visual Studio cierra cualquier solución o carpeta abierta al cambiar a otro repositorio. Cuando lo hace, también podría cargar la solución o carpeta del nuevo repositorio en función de si decide abrir una carpeta en el Explorador de soluciones al abrir un repositorio de Git y cargar automáticamente la solución al abrir un repositorio de Git. Esto mantiene la coherencia entre el código abierto y el repositorio abierto. Aun así, si la solución no se encuentra en la misma raíz de carpeta que el repositorio, es posible que le interese mantener abierta la solución al cambiar al repositorio. Puede hacerlo con esta opción. Los valores son los siguientes:

  • : cuando se abre un repositorio, siempre se cierra la solución abierta actualmente.

  • No: cuando se abre un repositorio, Visual Studio realiza una comprobación para saber si la solución actual está en Git. Si no es así, la solución permanece abierta.

  • Preguntar siempre (valor predeterminado): cuando se establece este valor, puede elegir en un cuadro de diálogo por cada repositorio abierto si quiere mantener abierta la solución actual o cerrarla.

    Screenshot showing the close solution setting in the Options dialog box.

Habilitación de la descarga de imágenes de autor de otros orígenes

La habilitación de la descarga de imágenes de autor de otros orígenes es una configuración específica de Visual Studio en el ámbito global. Cuando se activa, las imágenes de autor se descargan del servicio de imágenes de Gravatar, si están disponibles, y se muestran en las vistas Confirmación e Historial.

Screenshot showing checkbox to enable download of author images from third-party source in the Options dialog box.

Importante

Para proporcionar imágenes de autor en las vistas Confirmación e Historial, la herramienta crea un hash MD5 para las direcciones de correo electrónico del autor almacenadas en el repositorio activo. A continuación, este hash se envía a Gravatar para buscar un valor hash coincidente para los usuarios que se registraron previamente en el servicio. Si se encuentra una coincidencia, la imagen de usuario se recuperará del servicio y se mostrará en Visual Studio. Los usuarios que no hayan configurado el servicio devolverán una imagen generada aleatoriamente. Tenga en cuenta que las direcciones de correo electrónico no se registran en Visual Studio y no se comparten nunca con Gravatar ni con ningún otro tercero.

Confirmación de cambios tras la fusión mediante combinación de forma predeterminada

Cuando la opción Confirmar cambios tras la fusión mediante combinación de forma predeterminada está habilitada, Git crea automáticamente una confirmación cuando una rama se fusiona mediante combinación con la rama actual.

Screenshot showing the checkbox to commit changes after merge by default in the Options dialog box.

  • Cuando está activada, los comandos git merge emitidos por Visual Studio se ejecutan con la opción --commit.
  • Cuando está desactivada, los comandos git merge emitidos por Visual Studio se ejecutan con las opciones --no-commit --no-ff.

Para obtener más información sobre estas opciones, consulte --commit y --no-commit y --no-ff.

Habilitación de la inserción de --force-with-lease

Cuando está habilitada, esta opción permite realizar la acción push --force-with-lease desde Visual Studio. De forma predeterminada, la opción Enable push --force-with-lease (Habilitar la inserción de --force-with-lease) está deshabilitada.

Screenshot showing the checkbox to enable push force with lease in the Options dialog box.

Para obtener más información, consulte Inserción de --force-with-lease.

Apertura de una carpeta en el Explorador de soluciones al abrir un repositorio de Git

Cuando se usa Visual Studio para abrir o cambiar a un repositorio de Git, Visual Studio carga el contenido de Git para que pueda ver los cambios, confirmaciones y ramas, así como administrar el repositorio desde el IDE. Además, Visual Studio también cargará el código del repositorio en el Explorador de soluciones. Visual Studio examinará la carpeta del repositorio en busca de soluciones, CMakeLists.txt o cualquier otro archivo de vista que reconozca y los mostrará como una lista en el Explorador de soluciones. Desde allí, puede seleccionar una solución para cargarla o la carpeta para ver el contenido del directorio. Si se desactiva esta casilla, Visual Studio no abrirá la carpeta del repositorio en el Explorador de soluciones. Esto le permitirá abrir Visual Studio solo como administrador de repositorios de Git. Esta configuración está activada de manera predeterminada.

Screenshot showing the checkbox to open folder when opening a Git repository in the Options dialog box.

Carga automática de la solución al abrir un repositorio de Git

Esta opción solo se aplica cuando está activada la opción Open folder in Solution Explorer when opening a Git repository (Abrir una carpeta en el Explorador de soluciones al abrir un repositorio de Git). Cuando se abre un repositorio de Git en Visual Studio y el examen de carpetas posterior detecta que solo hay una solución en el repositorio, Visual Studio carga automáticamente esa solución. Si desactiva la opción, el Explorador de soluciones mostrará la única solución presente en el repositorio en la lista de vistas, pero no la cargará. De forma predeterminada, esta opción está desactivada.

Screenshot showing the checkbox to automatically load the solution when opening a Git repository in the Options dialog box.

Extracción de las ramas automáticamente del repositorio con un doble clic o con la tecla ENTRAR

La ventana Repositorio de Git tiene una lista de ramas que se muestran en una estructura de árbol. Al seleccionar una rama, el panel del historial de confirmaciones cambiará y mostrará las confirmaciones de la rama seleccionada. Para extraer del repositorio una rama, haga clic con el botón derecho para abrir el menú contextual y seleccione Extraer del repositorio. Si activa esta opción, al hacer doble clic o presionar la tecla ENTRAR se extraerá la rama del repositorio y se mostrarán sus confirmaciones.

Screenshot showing the checkbox to check out branches with double-click or Enter key in the Options dialog box.

Importante

Si tiene alguna sugerencia para nosotros, háganoslo saber. Agradecemos la oportunidad de participar en sus decisiones de diseño a través del portal Developer Community.