Wie kann ein Git-Repository lokal immer auf dem neuesten Stand gehalten werden?

Wie kann ein Git-Repository lokal immer auf dem neuesten Stand gehalten werden?

Ich verwende Git Tower zur Verwaltung meiner Git-Repositorys unter OS X und suche daher nach einer Antwort, die mir die Verwendung dieser Software oder einfach der Git-CLI ermöglicht.

Ich habe einige Git-Repositories (privates GitHub) lokal geklont. Ich arbeite nie daran, aber sie müssen immer auf dem neuesten Stand sein, da ich die in diesen Repositories enthaltene Software ausführe (oder ich verwende einige Teile dieser Repositories als Abhängigkeiten eines anderen Repositorys, kein Untermodul, tut mir leid).

Ich suche also nach einer Möglichkeit, diese Repositories immer auf dem neuesten Stand zu halten. Wie kann ich das tun?

Antwort1

Der Hauptzweck von Git besteht nicht darin, Ihre Software zu verteilen, Sie können es jedoch jederzeit ausführen, git pullbevor Sie Ihren Code neu laden.

Antwort2

Es hört sich an, als ob Sie eine Kombination aus Werkzeugen benötigen.

Zunächst benötigen Sie eine Möglichkeit, den Überblick über die zu aktualisierenden Repositories zu behalten und diese auf einen Schlag zu aktualisieren.Abonnierenist eine gute Möglichkeit, dabei zu helfen.

Dann brauchen Sie eine Möglichkeit, den Update-Befehl regelmäßig auszuführen. Dies kann auf verschiedene Arten erfolgen. In anderen Kommentaren finden Sie einige gute Hinweise: cron, eine Art Startagent usw.

Mir fällt jedoch ein, dass, wenn die Repos automatisch im Hintergrund aktualisiert werden (ohne Benutzerinitiative/Eingriff), bei der Aktualisierung der Repos ein Bericht/Protokoll/eine E-Mail erstellt werden soll, falls etwas fehlschlägt oder andere unerwartete Bedingungen auftreten.

Es sollte auch beachtet werden, dass das blinde Aktualisieren von Repos und anschließende Kopieren/Verpacken des aktualisierten Codes zur Verwendung an anderer Stelle etwas riskant ist. Meiner Meinung nach riecht dieses Problem danach, dass es ein richtiges Abhängigkeitsverwaltungstool oder einen Paketmanager benötigt.

verwandte Informationen