In un articolo precedente (https://www.dopsitalia.com/script/82/Migrare-Repository-Git-Azure-DevOps-GitHub.aspx) abbiamo già osservato come sia facile migrare un repository di git. Questo è possibile indipendentemente dalla sorgente, che potrebbe essere su Azure DevOps, così come su BitBucket o altro, perchè alla fine sotto il cofano c'è sempre git come engine.
I repository, però, stanno diventando sempre più complessi e possono contenere anche dati di grandi dimensioni, come immagini di macchine virtuali, sample di dati per l'esecuzione di test, audio, video e così via. Questi dati, solitamente, non vengono conservati come oggetti "standard" di git, ma potrebbero richiedere l'uso di git-lfs, ovvero Git Large File Storage.
Il lavoro di git-lgs è quello di rimpiazzare questi file di grandi dimensioni con dei semplici puntatori all'interno di git, così che si possa fare il clone del repository velocemente, se abbiamo bisogno di una fix, indipendentemente da questi file "pesanti".
Per integrare il codice dell'esempio precedente, nella fase di clone, dobbiamo integrare questi comandi:
git clone --bare <git-url> <folder> cd <folder> git lfs fetch --all
Così facendo, non cloniamo il repository, ma solo i puntatori, inclusi gli oggetti contenuti in git-lfs.
Successivamente, possiamo procedere al push, includendo anche gli oggetti di git-lfs.
git push --mirror <git-url> git lfs push --all <git-url>
L'uso di git-lfs in GitHub è soggetto a limitazioni e costi aggiuntivi in base alla dimensione degli oggetti e alla banda utilizzata nel clone degli oggetti stessi.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Aprire una finestra di dialogo per selezionare una directory in WPF e .NET 8
Garantire la provenienza e l'integrità degli artefatti prodotti su GitHub
Recuperare l'ultima versione di una release di GitHub
Ordinare randomicamente una lista in C#
Usare il colore CSS per migliorare lo stile della pagina
Usare una container image come runner di GitHub Actions
Cambiare la chiave di partizionamento di Azure Cosmos DB
Creare un webhook in Azure DevOps
Applicare un filtro per recuperare alcune issue di GitHub
Generare token per autenicarsi sulle API di GitHub
Potenziare Azure AI Search con la ricerca vettoriale
I più letti di oggi
- Effettuare il log delle chiamate a function di GPT in ASP.NET Web API
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Utilizzare il metodo CountBy di LINQ per semplificare raggruppamenti e i conteggi
- Creare una libreria CSS universale: Cards
- Eseguire script pre e post esecuzione di un workflow di GitHub