Configurar el control de versiones de Git
Puede utilizar el control de versiones de Git™ en MATLAB® para gestionar sus archivos y colaborar con otros. Al utilizar Git, puede registrar los cambios en sus archivos y recuperar versiones específicas más tarde. Para obtener más información, consulte Track Work Locally with Git in MATLAB y Colaborar usando Git en MATLAB.
Antes de utilizar Git, siga estos pasos para configurarlo para MATLAB:
(Obligatorio para todos los sistemas) Registre los archivos binarios con Git para evitar que se dañen. Para obtener más información, consulte Registrar archivos binarios con Git.
(Recomendado para sistemas Windows®) Habilite la compatibilidad con rutas largas para Git en un sistema Windows. Para obtener más información, consulte Habilitar compatibilidad para rutas largas.
(Recomendado para todos los sistemas) Configure MATLAB para fusionar archivos de modelos automáticamente. Para obtener más información, consulte Automatically Merge Models Locally and in CI Pipeline (Simulink).
(Opcional) Configure MATLAB para firmar confirmaciones. Para obtener más información, consulte Habilitar la firma de confirmaciones.
(Opcional) Configure MATLAB para usar la autenticación SSH de Git o instale un asistente de credenciales de Git para evitar peticiones frecuentes de inicio de sesión. Para obtener más información, consulte Configurar MATLAB para utilizar la autenticación de SSH de Git.
(Opcional) Configure MATLAB para administrar credenciales de Git. Para obtener más información, consulte Administrar las credenciales de Git.
(Opcional) Configure Git para utilizar Git LFS si está trabajando con archivos grandes. Para obtener más información, consulte Configurar Git para utilizar Git LFS.
(Opcional) Configure herramientas externas de Git para utilizar MATLAB para Diff y Merge. Para obtener más información, consulte Customize External Source Control to Use MATLAB for Diff and Merge.
A partir de la versión R2024a, puede ejecutar Git Hooks desde dentro de MATLAB. Los Git Hooks compatibles son pre-commit, commit-msg, post-commit, prepare-commit-msg, pre-push, pre-merge-commit, post-checkout y post-merge. Para ver un ejemplo, consulte Use Git Hooks in MATLAB.
Registrar archivos binarios con Git
Si utiliza herramientas de control de versiones externas, debe registrar sus extensiones de archivo de MATLAB y Simulink® como .mlx, .mat, .fig, .mlapp, .mdl, .slx, .mdlp, .slxp, .sldd y .p como formatos binarios. Registre también extensiones para archivos MEX, como .mexa64, .mexmaci64, .mexmaca64 y .mexw64. Si no registra las extensiones, estas herramientas pueden dañar los archivos al enviarlos, cambiando los caracteres de final de línea, expandiendo los tokens, sustituyendo las palabras clave o intentando fusionar automáticamente. El daño se puede producir si utiliza herramientas de control de versiones que no sean de MATLAB o si intenta enviar archivos desde MATLAB sin registrar primero los formatos de archivo.
Registre también otras extensiones de archivo, como .xlsx, .jpg, .pdf y .docx, como formatos binarios para evitar que se dañen durante la operación de envío.
Para registrar las extensiones de sus archivos binarios con Git, añádalos al archivo .gitattributes de su repositorio. Si crea un nuevo proyecto que utilice el control de versiones de Git o cambia un proyecto existente de otro sistema de control de versiones al control de versiones de Git, MATLAB crea automáticamente un archivo .gitattributes y lo rellena con una lista de archivos binarios comunes que se registrarán.
Si no se crea automáticamente un archivo .gitattributes, puede crear uno que contenga la lista de archivos binarios comunes que se registrarán. En la ventana de comandos de MATLAB, escriba lo siguiente:
copyfile(fullfile(matlabroot,'toolbox','shared','cmlink','git','auxiliary_files', ... 'mwgitattributes'),fullfile(pwd,'.gitattributes'))
De forma alternativa, cree un archivo .gitattributes en blanco en su repositorio y rellene su contenido.
Añada
* text=autoa la parte superior del archivo.gitattributes.Para cada extensión de archivo binario
ext, agregue*.. Por ejemplo,extbinary*.mlapp binary.
Habilitar compatibilidad para rutas largas
Habilite la compatibilidad con rutas largas en un sistema Windows siguiendo estos pasos.
En la pestaña Home, en la sección Environment, haga clic en Settings. Seleccione MATLAB > Source Control > Git.
En la sección Windows, seleccione Enable support for long paths. Al hacerlo, se establece el valor de
core.longpathsentrueen su archivo de configuración global de Git.
Para obtener más información, consulte Configure Git Settings.
Habilitar la firma de confirmaciones
Ajuste la configuración de su control de versiones para permitir que MATLAB firme confirmaciones de Git automáticamente siguiendo estos pasos. Cuando MATLAB verifica una firma de confirmación, aparece un icono de verificación verde
junto a su avatar y nombre de usuario tanto en Branch Manager como en las anotaciones de línea en el editor de MATLAB.
En la pestaña Home, en la sección Environment, haga clic en Settings. Seleccione MATLAB > Source Control > Git.
En la sección Commit Signing, establezca la clave de firma, el formato de la clave de firma y el programa de firma. Para obtener más información, consulte Configure Git Settings.
Configurar MATLAB para utilizar la autenticación de SSH de Git
Para evitar las frecuentes peticiones de inicio de sesión cuando interactúe con su repositorio remoto usando HTTPS, agregue una nueva clave pública y clone el repositorio usando SSH en su lugar. Configure MATLAB para utilizar la autenticación de SSH siguiendo estos pasos.
Genere una clave SSH utilizando el comando
ssh-keygen. Por ejemplo, en una línea de comandos, introduzca este comando:ssh-keygen -t ed25519 -C "your_email@example.com"
ssh-keygenle solicita que confirme dónde guardar la clave y le pide una contraseña. Si no desea escribir una contraseña al usar la clave, deje la contraseña vacía.Si ya tiene claves en la carpeta especificada,
ssh-keygenpregunta si desea sobrescribirlas.Configure el uso de claves de SSH en MATLAB. En la pestaña Home, en la sección Environment, haga clic en Settings. Seleccione MATLAB > Source Control > Git. Después, ajuste la configuración.
En la sección SSH, seleccione, si no lo está, Enable SSH.
De manera predeterminada, MATLAB busca claves en un agente de SSH. En Windows, utilice OpenSSH como agente de SSH. Para obtener más información, consulte Autenticación basada en claves en OpenSSH para Windows.
Utilizar un agente de SSH permite almacenar y usar varias claves.
Si no está utilizando un agente de SSH para almacenar sus claves, puede introducirlas manualmente. Desmarque la casilla Use SSH agent. Después, especifique la ruta de sus archivos de claves públicas y privadas en Public key file y Private key file. Para obtener más información, consulte Configure Git Settings.
Para habilitar el uso de una contraseña y recibir una solicitud una vez por sesión, seleccione Key is pass-phrase protected.
Configure su cuenta de GitHub® o GitLab® para utilizar las claves de SSH. Para hacerlo, vaya a la carpeta
.sshy copie el contenido del archivo.pub. Después, vaya a la configuración de su cuenta y, en la sección SSH keys, pegue el contenido del archivo.puben el campo Add SSH key.
Administrar las credenciales de Git
De manera predeterminada, MATLAB recuerda sus nombres de usuario y tokens cuando interactúa con repositorios de Git. Para cambiar las opciones de credenciales predeterminadas, en la pestaña Home, en la sección Environment, haga clic en Settings. Seleccione MATLAB > Source Control > Git. En la sección Credentials, seleccione una de las opciones disponibles. Para obtener más información, consulte Configure Git Settings.
Como alternativa, también puede instalar un asistente de credenciales de Git externo y configurar MATLAB para que lo utilice en su lugar. El asistente de credenciales recomendado para todas las plataformas es Git Credential Manager Core. Para obtener más información, consulte Configurar MATLAB para que utilice el asistente de credenciales de Git en Configuración adicional.
Para eliminar la información de inicio de sesión guardada en un repositorio Git escriba lo siguiente en MATLAB:
matlab.git.clearCredential("https://github.com/myrepo.git")Configurar Git para utilizar Git LFS
Si está trabajando con archivos grandes, configure Git para utilizar Git Large File Storage (LFS) instalando un Git de línea de comandos y configurando LFS.
Por ejemplo, para utilizar Git LFS en un sistema Windows, descargue y ejecute el instalador de Git para Windows utilizando las instrucciones descritas en Instalar cliente de Git de línea de comandos en Configuración adicional. En la sección Select Components del instalador de Git para Windows, seleccione Git LFS (Large File Support) y los archivos .sh correspondientes que se van a ejecutar con las opciones Bash.
Configuración adicional
Para utilizar Git LFS o un asistente de credenciales, debe instalar un cliente de Git de línea de comandos y ponerlo a disposición de todo el sistema.
MATLAB recuerda los nombres de usuario y tokens cuando interactúa con repositorios de Git. Puede utilizar un asistente de credenciales externo de Git en su lugar para almacenar sus credenciales de Git. Credential Manager Core de Git es el asistente de credenciales recomendado para todas las plataformas.
Configurar MATLAB para que utilice el asistente de credenciales de Git