Informationen zu Git Large File Storage
Git Large File Storage (Git LFS) ist eine Open-Source-Erweiterung zu Git, mit der Sie große Dateien auf dieselbe Weise wie andere Textdateien verwenden können. Du kannst Git Large File Storage mit einem einzelnen Repository, mit allen persönlichen oder Organisationsrepositorys oder mit allen Repositorys in deinem Unternehmen verwenden. Bevor du Git LFS für bestimmte Repositorys oder Organisationen aktivieren kannst, musst du Git LFS für dein Unternehmen aktivieren.
Der Git Large File Storage-Client speichert standardmäßig große Ressourcen auf dem gleichen Server, auf dem das Git-Repository gehostet wird. Wenn Git LFS auf your GitHub Enterprise Server instance aktiviert ist, werden große Ressourcen in der Datenpartition in /data/user/storage
gespeichert.
Benutzer können Git LFS-Assets nicht per Pushvorgang an GitHub Enterprise Server übertragen, wenn Git LFS für das Unternehmen oder Repository deaktiviert ist.
Weitere Informationen findest du unter Informationen zu Git Large File Storage, Versionsverwaltung für große Dateien und auf der Projektwebsite zu Git Large File Storage.
Konfigurieren von Git Large File Storage für dein Unternehmen
- Klicke oben rechts auf GitHub Enterprise Server auf dein Profilfoto und dann auf Unternehmenseinstellungen.
1. Klicke in der Unternehmensrandleiste auf Richtlinien.
1. Klicke unter Richtlinien auf Optionen.
- Verwende das Dropdownmenü unter „Git LFS-Zugriff“, und klicke auf Aktiviert oder Deaktiviert.
Git Large File Storage für ein einzelnes Repository konfigurieren
Hinweis: Jedes Repository erbt automatisch die Standardeinstellungen von der Organisation oder dem Benutzer, der bzw. dem es gehört. Du kannst die Standardeinstellung nicht überschreiben, wenn die Repository-Inhaber die Einstellung für alle ihre Repositorys erzwungen haben.
-
Klicke in einem Verwaltungskonto auf GitHub Enterprise Server, und klicke in der oberen rechten Ecke einer beliebigen Seite auf .
-
Wenn du dich nicht bereits auf der Seite „Websiteadministrator“ befindest, klicke in der oberen linken Ecke auf Websiteadministrator.
1. Gib im Suchfeld den Namen des Repositorys ein, und klicke auf Suchen.
1. Klicke in den Suchergebnissen auf den Namen des Repository.
1. Klicke in der oberen rechten Ecke der Seite auf Administrator.
1. Klicke auf der linken Randleiste auf Verwaltung.
1. Klicke unter "Git LFS" auf Aktivieren oder Deaktivieren.
Git Large File Storage für jedes einem Benutzerkonto oder einer Organisation gehörende Repository konfigurieren
-
Klicke in einem Verwaltungskonto auf GitHub Enterprise Server, und klicke in der oberen rechten Ecke einer beliebigen Seite auf .
-
Wenn du dich nicht bereits auf der Seite „Websiteadministrator“ befindest, klicke in der oberen linken Ecke auf Websiteadministrator.
1. Gib im Suchfeld den Namen des Benutzers oder der Organisation ein, und klicke auf Suchen.
1. Klicke in den Suchergebnissen auf den Namen des Benutzers oder der Organisation.
1. Klicke in der oberen rechten Ecke der Seite auf Administrator.
1. Klicke auf der linken Randleiste auf Verwaltung.
1. Klicke unter "Git LFS" auf Aktivieren oder Deaktivieren.
Git Large File Storage zur Verwendung eines Drittanbieterservers konfigurieren
Der Git Large File Storage-Client speichert standardmäßig große Ressourcen auf dem gleichen Server, auf dem das Git-Repository gehostet wird. Wenn Git LFS auf your GitHub Enterprise Server instance aktiviert ist, werden große Ressourcen in der Datenpartition in /data/user/storage
gespeichert.
Benutzer können Git LFS-Assets nicht per Pushvorgang an GitHub Enterprise Server übertragen, wenn Git LFS für das Unternehmen oder Repository deaktiviert ist.
-
Deaktiviere Git LFS auf your GitHub Enterprise Server instance. Weitere Informationen findest du unter Konfigurieren von Git Large File Storage für dein Unternehmen.
-
Erstelle eine Git LFS-Konfigurationsdatei, die auf den Drittanbieterserver verweist.
# 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
-
Committe eine benutzerdefinierte
.lfsconfig
-Datei an das Repository, um dieselbe Git LFS-Konfiguration für alle Benutzer*innen beizubehalten.$ git add .lfsconfig $ git commit -m "Adding LFS config file"
-
Migriere vorhandene Git LFS-Assets. Weitere Informationen findest du unter Migration zu einem anderen Git Large File Storage-Server.
Zu einem anderen Git Large File Storage-Server migrieren
Bevor du eine Migration zu einem anderen Git Large File Storage-Server durchführst, musst du Git LFS für die Verwendung eines Drittanbieterservers konfigurieren. Weitere Informationen findest du unter Konfigurieren von Git Large File Storage für die Verwendung eines Drittanbieterservers.
-
Konfiguriere das Repository mit einer zweiten Remote-Instanz.
$ 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)
-
Rufe alle Objekte von der alten Remote-Instanz ab.
$ 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
-
Übertrage alle Objekte per Push-Vorgang auf die neue Remote-Instanz.
$ 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