Contenuto principale

Impostazione del controllo della sorgente Git

R2026b
Sostituisce Set Up Git Source Control (R2024b).

È possibile utilizzare il controllo della sorgente Git™ in MATLAB® per gestire file e collaborare con altre persone. Utilizzando Git, è possibile tenere traccia delle modifiche apportate ai file e chiamare versioni specifiche in un secondo momento. Per maggiori informazioni, vedere Tracking del lavoro a livello locale con Git in MATLAB e Collaborazione utilizzando Git in MATLAB.

Prima di utilizzare Git, seguire questi passaggi per impostarlo per MATLAB:

A partire dalla release R2024a, è possibile eseguire gli hook Git dall'interno di MATLAB. Gli hook supportati sono pre-commit, commit-msg, post-commit, prepare-commit-msg, pre-push, pre-merge-commit, post-checkout e post-merge. Per un esempio, vedere Use Git Hooks in MATLAB.

Registrazione di file binari con Git

Se si utilizzano strumenti di controllo della sorgente di terze parti, è necessario registrare le estensioni dei file di MATLAB e Simulink®, quali .mlx, .mat, .fig, .mlapp, .mdl, .slx, .mdlp, .slxp, .sldd e .p come formati binari. Registrare anche le estensioni per i file MEX, quali .mexa64, .mexmaci64, .mexmaca64 e .mexw64. Se non si registrano le estensioni, questi strumenti potrebbero corrompere i file al momento dell'invio, modificando i caratteri di fine riga, espandendo i token, sostituendo le parole chiave o tentando di eseguire un'unione automatica. La corruzione può verificarsi se si utilizzano gli strumenti di controllo della sorgente al di fuori di MATLAB o se si tenta di effettuare un invio di file da MATLAB senza aver prima registrato i formati dei file.

Registrare anche altre estensioni di file, quali .xlsx, .jpg, .pdf e .docx come formati binari per evitare la corruzione durante l'operazione di check-in.

Per registrare le estensioni dei file binari con Git, aggiungerle al file .gitattributes presente nel repository. Se si crea un nuovo progetto che utilizza il controllo della sorgente Git oppure si trasferisce un progetto esistente da un altro sistema di controllo della sorgente al controllo della sorgente Git, MATLAB crea automaticamente un file .gitattributes e lo popola con un elenco di file binari comuni da registrare.

Se un file .gitattributes non viene creato automaticamente, è possibile crearne uno contenente l'elenco dei file binari comuni da registrare. Nella finestra di comando di MATLAB, inserire:

copyfile(fullfile(matlabroot,'toolbox','shared','cmlink','git','auxiliary_files', ...
'mwgitattributes'),fullfile(pwd,'.gitattributes'))

In alternativa, creare un file .gitattributes vuoto nel repository e popolarne il contenuto.

  1. Aggiungere * text=auto all'inizio del file .gitattributes.

  2. Per ogni estensione di file binario ext, aggiungere *.ext binary. Ad esempio, *.mlapp binary.

Abilitazione del supporto per i percorsi lunghi

Abilitare il supporto per i percorsi lunghi su un sistema Windows seguendo questi passaggi.

  1. Nella scheda Home, nella sezione Environment, fare clic su Settings. Selezionare MATLAB > Source Control > Git.

  2. Nella sezione Windows, selezionare Enable support for long paths. In questo modo si imposta il valore di core.longpaths su true nel file di configurazione globale Git.

Per maggiori informazioni, vedere Configure Git Settings.

Abilitazione della firma dei commit

Configurare le impostazioni di controllo della sorgente per consentire a MATLAB di firmare automaticamente i commit Git seguendo questi passaggi. Quando MATLAB verifica la firma di un commit, accanto all'avatar e al nome utente compare un'icona di verifica verde sia in Branch Manager che nelle annotazioni di riga nell'Editor di MATLAB.

  1. Nella scheda Home, nella sezione Environment, fare clic su Settings. Selezionare MATLAB > Source Control > Git.

  2. Nella sezione Commit Signing, impostare la chiave di firma, il formato della chiave di firma e il programma di firma. Per maggiori informazioni, vedere Configure Git Settings.

Configurazione di MATLAB per utilizzare l'autenticazione SSH Git

Per evitare frequenti richieste di accesso quando si interagisce con il repository remoto utilizzando HTTPS, aggiungere una nuova chiave pubblica e utilizzare invece SSH per clonare il repository. Configurare MATLAB per utilizzare l'autenticazione SSH seguendo questi passaggi.

  1. Generare una chiave SSH utilizzando il comando ssh-keygen. Ad esempio, al prompt dei comandi, inserire questo comando:

    ssh-keygen -t ed25519 -C "your_email@example.com"
    ssh-keygen richiede di confermare la posizione in cui salvare la chiave e chiede di inserire una passphrase. Se non si desidera digitare una password quando si utilizza la chiave, lasciare il campo della passphrase vuoto.

    Se sono già presenti delle chiavi nella cartella specificata, ssh-keygen chiede se si desidera sovrascriverle.

  2. Impostare l'utilizzo delle chiavi SSH in MATLAB. Nella scheda Home, nella sezione Environment, fare clic su Settings. Selezionare MATLAB > Source Control > Git. Quindi, configurare le impostazioni.

    1. Nella sezione SSH, selezionare Enable SSH qualora non fosse abilitato.

      Per impostazione predefinita, MATLAB cerca le chiavi in un agente SSH. In Windows, utilizzare OpenSSH come agente SSH. Per maggiori informazioni, vedere Key-based authentication in OpenSSH for Windows (Autenticazione basata su chiave in OpenSSH per Windows).

      L'utilizzo di un agente SSH consente di memorizzare e utilizzare più chiavi.

    2. Se non si utilizza un agente SSH per memorizzare le chiavi, è possibile inserirle manualmente. Deselezionare la casella di spunta Use SSH agent. Quindi, specificare il percorso dei file delle chiavi pubblica e privata nei campi Public key file e Private key file. Per maggiori informazioni, vedere Configure Git Settings.

      Per abilitare l'utilizzo di una passphrase e ricevere una richiesta una volta per sessione, selezionare Key is pass-phrase protected.

  3. Configurare l'account GitHub® o GitLab® per utilizzare le chiavi SSH. Per farlo, andare alla cartella .ssh e copiare il contenuto del file .pub. Quindi, andare alle impostazioni dell'account e, nella sezione SSH keys, incollare il contenuto del file .pub nel campo Add SSH key.

Gestione delle credenziali Git

Per impostazione predefinita, MATLAB memorizza i nomi utente e i token quando si interagisce con i repository Git. Per modificare le impostazioni predefinite relative alle credenziali, nella scheda Home, nella sezione Environment, fare clic su Settings. Selezionare MATLAB > Source Control > Git. Nella sezione Credentials, selezionare una delle opzioni disponibili. Per maggiori informazioni, vedere Configure Git Settings.

In alternativa, è possibile installare un helper per le credenziali Git esterno e configurare MATLAB affinché lo utilizzi. L'helper per le credenziali consigliato per tutte le piattaforme è Git Credential Manager Core. Per maggiori informazioni, vedere Configurare MATLAB per utilizzare l'helper per le credenziali Git in Ulteriore impostazione.

Per eliminare le credenziali di accesso salvate per un repository Git in MATLAB, inserire:

matlab.git.clearCredential("https://github.com/myrepo.git")

Configurazione di Git per utilizzare Git LFS

Se si lavora con file di grandi dimensioni, configurare Git per utilizzare Git Large File Storage (LFS) installando Git dalla riga di comando e impostando LFS.

Ad esempio, per utilizzare Git LFS su un sistema Windows, scaricare ed eseguire il programma di installazione di Git per Windows seguendo le istruzioni descritte in Installazione del client Git dalla riga di comando in Ulteriore impostazione. Nella sezione Select Components del programma di installazione di Git per Windows, selezionare le opzioni Git LFS (Large File Support) e Associate .sh files to be run with Bash (Associare i file .sh all'esecuzione con bash).

Ulteriore impostazione

  • Per utilizzare Git LFS o un helper per le credenziali, è necessario installare un client Git dalla riga di comando e renderlo disponibile a livello di sistema.

    Per verificare se Git è installato, inserire il comando !git nella finestra di comando di MATLAB. Se il comando non restituisce alcun output, è necessario installare un client Git dalla riga di comando. Questa tabella fornisce le istruzioni su come installare un client Git dalla riga di comando in base al sistema operativo in uso.

    Sistema operativoIstruzioni
    Windows
    1. Scaricare ed eseguire il programma di installazione da https://gitforwindows.org/.

    2. Nelle sezioni Select Components, assicurarsi di aver selezionato Git LFS e Associate .sh file to be run with Bash.

      • Selezionando Git LFS è possibile utilizzare Git LFS su Windows.

      • Selezionando Associate .sh file to be run with Bash è possibile utilizzare gli hook Git su Windows. Per un esempio su come utilizzare gli hook Git, vedere Use Git Hooks in MATLAB.

      • Per impostazione predefinita, l'installazione di Git dalla riga di comando include Git bash, che fornisce le utilità della shell. Quando si configura MATLAB per unire automaticamente i modelli di Simulink, Git bash consente di eseguire mlAutoMerge.bat su Windows. Vedere Automatically Merge Models Locally and in CI Pipeline (Simulink)

    3. Nella sezione Adjusting your PATH environment selezionare l'opzione di installazione Git from the command line and also from 3rd-party software. Questa opzione aggiunge Git alla variabile PATH e la rende disponibile a livello di sistema, in modo che MATLAB possa comunicare con Git.

    4. Nella sezione dedicata alla configurazione delle conversioni dei caratteri di fine riga, selezionare l'opzione Checkout Windows-style, commit Unix-style line endings. Il formato dei caratteri di fine riga non può essere imposto tra macchine e utenti, ma è possibile mantenere caratteri di fine riga coerenti per i file di testo nel file .gitattributes di ciascun repository.

    5. Riavviare il sistema affinché le modifiche vengano implementate.

    Linux®

    Git è disponibile per la maggior parte delle distribuzioni. Installare Git per la distribuzione in uso. Ad esempio, su Debian®, installare Git inserendo questo comando:

    sudo apt-get install git
    macOSSu Mavericks (10.9) o versioni successive, eseguire Git da una finestra Terminal (Terminale). Se Git non è già installato, verrà richiesto di installare gli strumenti da riga di comando di Xcode. Per maggiori informazioni, vedere https://git-scm.com/doc.
  • MATLAB memorizza i nomi utente e i token quando si interagisce con i repository Git. In alternativa, è possibile utilizzare un helper per le credenziali Git esterno per memorizzare proprie credenziali Git. Git Credential Manager Core è l'helper per le credenziali consigliato per tutte le piattaforme.

    Per installare Git Credential Manager Core su un sistema Windows e configurare MATLAB affinché lo utilizzi per memorizzare le credenziali Git, seguire questi passaggi:

    1. Scaricare ed eseguire il programma di installazione di Git per Windows seguendo le istruzioni riportate nella sezione precedente.

    2. Nella sezione Scegli un helper per le credenziali del programma di installazione, selezionare Git Credential Manager Core come helper per le credenziali. Questo definisce il valore di credential.helper nel file globale .gitconfig.

      In alternativa, è possibile impostare manualmente il valore di credential.helper nel file globale .gitconfig.

Vedi anche

Funzioni

Argomenti