Wie verwende ich Git in einer Sneakernet-Umgebung?

Lesezeit: 2 Minuten

Benutzer-Avatar
Philipp Oakley

Mein Projekt hat eine Reihe von Test-PCs, die zu 100 % netzunabhängig sind. Wir verwenden ein USB-Laufwerk, um Dateien zu und von diesen PCs zu übertragen. Einige Entwicklungen finden während der Tests auf diesen PCs statt. Wir übertragen ZIP-Dateien der aktualisierten Dateien, wobei die „Versionsinformationen“ im Namen der ZIP-Datei codiert sind.

Meine Frage ist, wie Git am besten für die Verwaltung der Sneakernet-Übertragung von Dateien (oder Repos oder was?) zwischen den Büro-PCs des Projekts und den Test-PCs verwendet werden kann. Es ist nicht der normale „Anwendungsfall“, der oft für Laptop-Benutzer präsentiert wird, die „off-net“ sind und in einem Eckcafé entwickeln und später wieder ans Netz gehen.

Hat jemand Erfahrungen mit solchen Szenarien?


Siehe auch die git bundle create <file> --all antworten, um ein komplettes Repo zu übertragen

Die Verwendung von Git mit nicht verbundenen Computern ist einfach mit git bundle.

Siehe seine Manpage.

Benutzer-Avatar
Kent

Sie können auch einen Klon des Repositorys auf einem USB-Laufwerk aufbewahren. „Push“ vom Off-Net-PC auf das USB-Laufwerk, dann „Push“ vom USB-Laufwerk auf das zentrale Repository.

Es könnte besser sein, das USB-Laufwerks-Repository mit einem eigenen Arbeitsverzeichnis (auch auf dem USB-Laufwerk) zu haben. Ziehen Sie dann vom Off-Net-PC auf das USB-Laufwerk und drücken Sie vom USB-Laufwerk auf das zentrale Repository. Wenn dieser Push erfolgt, können Sie bei Bedarf auf dem USB-Laufwerk zusammenführen.

  • Sie brauchen nicht wirklich ein “zentrales” Repository, wenn Sie Git verwenden, aber ja, das Pushen und Ziehen von Repositories auf USB-Laufwerken würde funktionieren.

    – Chris Friedrich

    10. Juni 2011 um 0:55 Uhr

  • Meine Sorge, ein vollständiges Repository auf dem Laufwerk zu haben, war die Größe und die Möglichkeit der Beschädigung, außerdem hat jeder Entwickler sein eigenes Laufwerk, sodass die Synchronisierung „verloren“ gehen könnte. Ich bin sicher, dass es für einige Workflows funktionieren wird.

    – Philipp Oakley

    10. Juni 2011 um 7:04 Uhr

Benutzer-Avatar
Philipp Oakley

Leser, die hierher kommen, sind wahrscheinlich auch daran interessiert, den Code „git-on-usb-stick-for-travelling-code“ zu verwenden, der viele Ähnlichkeiten aufweist. Es wird wahrscheinlich nicht für meine Umgebung funktionieren, in der zwei Benutzer die Sneakernet-Verwendungs-/Bearbeitungsbewegungen ausführen (dh zwei separate USB-Laufwerke), aber es ist eine Möglichkeit.

Es hängt alles davon ab, wie sehr Sie dem Übertragungslaufwerk vertrauen und ob die Tools funktionieren können, wenn Sie es nicht angeschlossen haben ….

Benutzer-Avatar
chrisinmtown

Ich fand dieses Tutorial noch hilfreicher als die Manpage, weil es ein Beispiel dafür gibt, wie Git prüft, ob das eingehende Bundle und das Ziel-Repository einen gemeinsamen Vorfahren-Commit haben:

https://git-scm.com/book/en/v2/Git-Tools-Bundling

1018000cookie-checkWie verwende ich Git in einer Sneakernet-Umgebung?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy