[gelöst] zentrale git verwaltung

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
mullers

[gelöst] zentrale git verwaltung

Beitrag von mullers » 11.08.2010 16:13:23

Ich habe auf dem Rechner einige git kontrollierte Verzeichnisse herumliegen. Bis jetzt mache ich updates immer so, dass ich eben in jedes Verzeichnis einzeln wechsle und von dort `git pull' ausführe.
Etwas umständlich; gibt es etwas mit dem ich da zentral machen kann? Also die Verzeichnisse wären da gelistet und ein pull würde auf alle angewendet

Gruesse
henry
Zuletzt geändert von mullers am 12.08.2010 07:38:22, insgesamt 1-mal geändert.

Benutzeravatar
peschmae
Beiträge: 4844
Registriert: 07.01.2003 12:50:33
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: nirgendwo im irgendwo

Re: zentrale git verwaltung

Beitrag von peschmae » 11.08.2010 20:39:53

Naja, so ein script wie hier:

Code: Alles auswählen

!/bin/bash
WD=$(pwd);
find -type d -name .git |sed -e 's#\.git$##' -e 's#^\./##' | while read f; do
  cd $WD/$f
  echo git-pull in $WD/$f
  git-pull
done
Für meine Anwendungen verwende ich sowas ähnliches, das allerdings in jedem .git Ordner ein Script "./git-update.sh" aufruft, das ich dann je nach repository mit passenden Befehlen ausstatte. Sei es ein git-cvsimport, ein git-svn rebase oder ein git-pull... - man sollte sich aber schon etwas Gedanken machen, damit sowas nicht plötzlich Befehle ausführt die man eben gerade nicht ausführen wollte ;-)

MfG Peschmä
"er hätte nicht in die usa ziehen dürfen - die versauen alles" -- Snoopy

mullers

Re: zentrale git verwaltung

Beitrag von mullers » 12.08.2010 07:37:51

Schön! Ein Skript, das wäre ich jetzt gar nicht drauf gekommen, sehr viel besser als ein extra Programm.

Danke!
henry

gxyz
Beiträge: 202
Registriert: 26.07.2010 13:54:21
Lizenz eigener Beiträge: MIT Lizenz

Re: [gelöst] zentrale git verwaltung

Beitrag von gxyz » 14.08.2010 12:55:48

angesichts aktueller Plattengroessen (und auch, weil womoeglich nicht alles, aktualisiert werden soll) koennte es allerdings ratsam sein, statt mit 'find' die gesamte Platte zu durchsuchen einfach eine Liste der betreffenden Verzeichnisse in einer Datei abzulegen ...
Gruß,
Peter

Antworten