À propos de Git Large File Storage
Git Large File Storage (Git LFS) est une extension open source de Git qui vous permet d’utiliser des fichiers volumineux de la même façon que d’autres fichiers texte. Vous pouvez utiliser Git Large File Storage avec un seul dépôt, avec tous vos dépôts personnels ou d’organisation ou avec chaque dépôt de votre entreprise. Pour pouvoir activer Git LFS pour des dépôts ou des organisations spécifiques, vous devez activer Git LFS pour votre entreprise.
Par défaut, le client Git Large File Storage stocke les ressources volumineuses sur le même serveur que celui qui héberge le référentiel Git. Lorsque Git LFS est activé sur your GitHub Enterprise Server instance, les ressources volumineuses sont stockées sur la partition de données dans /data/user/storage
.
Les utilisateurs ne peuvent pas envoyer les ressources Git LFS à GitHub Enterprise Server si Git LFS est désactivé sur l’entreprise ou le référentiel.
Pour plus d’informations, consultez « À propos de Git Large File Storage », « Versioning de grands fichiers » et le site du projet Git Large File Storage.
Configuration de Git Large File Storage pour votre entreprise
- Dans le coin supérieur droit de GitHub Enterprise Server, cliquez sur votre photo de profil, puis sur Paramètres d’entreprise.
1. Dans la barre latérale d’entreprise, cliquez sur Stratégies.
1. Sous Stratégies, cliquez sur Options.
- Sous « Accès à Git LFS », utilisez le menu déroulant et cliquez sur Activé ou Désactivé.
Configuration de Git Large File Storage pour un dépôt individuel
Remarque : Chaque dépôt hérite automatiquement des paramètres par défaut de l’organisation ou de l’utilisateur qui le possède. Vous ne pouvez pas remplacer le paramètre par défaut si le propriétaire du dépôt a appliqué le paramètre sur tous ses dépôts.
-
À partir d’un compte d’administration sur GitHub Enterprise Server, cliquez sur dans le coin supérieur droit de n’importe quelle page.
-
Si vous ne figurez pas déjà sur la page « Administrateur du site », dans le coin supérieur gauche, cliquez sur Administrateur du site.
1. Dans le champ de recherche, tapez le nom du dépôt et cliquez sur Rechercher.
1. Dans les résultats de recherche, cliquez sur le nom du dépôt.
1. En haut à droite de la page, cliquez sur Admin.
1. Dans la barre latérale gauche, cliquez sur Administrateur.
1. Sous « Git LFS », cliquez sur Activer ou Désactiver.
Configuration de Git Large File Storage pour chaque dépôt appartenant à un compte d’utilisateur ou à une organisation
-
À partir d’un compte d’administration sur GitHub Enterprise Server, cliquez sur dans le coin supérieur droit de n’importe quelle page.
-
Si vous ne figurez pas déjà sur la page « Administrateur du site », dans le coin supérieur gauche, cliquez sur Administrateur du site.
1. Dans le champ de recherche, tapez le nom de l’utilisateur ou de l’organisation, puis cliquez sur Rechercher.
1. Dans les résultats de recherche, cliquez sur le nom de l’utilisateur ou de l’organisation.
1. En haut à droite de la page, cliquez sur Admin.
1. Dans la barre latérale gauche, cliquez sur Administrateur.
1. Sous « Git LFS », cliquez sur Activer ou Désactiver.
Configuration de Git Large File Storage pour utiliser un serveur tiers
Par défaut, le client Git Large File Storage stocke les ressources volumineuses sur le même serveur que celui qui héberge le référentiel Git. Lorsque Git LFS est activé sur your GitHub Enterprise Server instance, les ressources volumineuses sont stockées sur la partition de données dans /data/user/storage
.
Les utilisateurs ne peuvent pas envoyer les ressources Git LFS à GitHub Enterprise Server si Git LFS est désactivé sur l’entreprise ou le référentiel.
-
Désactivez Git LFS sur your GitHub Enterprise Server instance. Pour plus d’informations, consultez « Configuration de Git Large File Storage pour votre entreprise ».
-
Créez un fichier de configuration de Git LFS pointant vers le serveur tiers.
# Show default configuration $ git lfs env > git-lfs/1.1.0 (GitHub; darwin amd64; go 1.5.1; git 94d356c) > git version 2.7.4 (Apple Git-66) > Endpoint=https://GITHUB-ENTERPRISE-HOST/path/to/repo/info/lfs (auth=basic) # Create .lfsconfig that points to third party server. $ git config -f .lfsconfig remote.origin.lfsurl https://THIRD-PARTY-LFS-SERVER/path/to/repo $ git lfs env > git-lfs/1.1.0 (GitHub; darwin amd64; go 1.5.1; git 94d356c) > git version 2.7.4 (Apple Git-66) > Endpoint=https://THIRD-PARTY-LFS-SERVER/path/to/repo/info/lfs (auth=none) # Show the contents of .lfsconfig $ cat .lfsconfig [remote "origin"] lfsurl = https://THIRD-PARTY-LFS-SERVER/path/to/repo
-
Pour conserver la même configuration de Git LFS pour chaque utilisateur, commitez un fichier
.lfsconfig
personnalisé dans le dépôt.$ git add .lfsconfig $ git commit -m "Adding LFS config file"
-
Migrez toutes les ressources existantes de Git LFS. Pour plus d’informations, consultez « Migration vers un autre serveur Git Large File Storage ».
Migration vers un autre serveur Git Large File Storage
Avant de migrer vers un autre serveur Git Large File Storage, vous devez configurer Git LFS pour utiliser un serveur tiers. Pour plus d’informations, consultez « Configuration de Git Large File Storage pour utiliser un serveur tiers ».
-
Configurez le dépôt avec un deuxième dépôt distant.
$ git remote add NEW-REMOTE https://NEW-REMOTE-HOSTNAME/path/to/repo $ git lfs env > git-lfs/1.1.0 (GitHub; darwin amd64; go 1.5.1; git 94d356c) > git version 2.7.4 (Apple Git-66) > Endpoint=https://GITHUB-ENTERPRISE-HOST/path/to/repo/info/lfs (auth=basic) > Endpoint (NEW-REMOTE)=https://NEW-REMOTE-HOSTNAME/path/to/repo/info/lfs (auth=none)
-
Récupérez (fetch) tous les objets de l’ancien dépôt distant.
$ git lfs fetch origin --all > Scanning for all objects ever referenced... > ✔ 16 objects found > Fetching objects... > Git LFS: (16 of 16 files) 48.71 MB / 48.85 MB
-
Poussez (push) tous les objets sur le nouveau dépôt distant.
$ git lfs push NEW-REMOTE --all > Scanning for all objects ever referenced... > ✔ 16 objects found > Pushing objects... > Git LFS: (16 of 16 files) 48.00 MB / 48.85 MB, 879.10 KB skipped