"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

git: check out as user

wergor 25.03.2020 - 11:25 873 1
Posts

wergor

I like open source
Avatar
Registered: Jul 2005
Location: graz
Posts: 3568
ich benutze folgendes script, um alle git repos in einem directory zu pullen:
Code:
find . -mindepth 1 -maxdepth 1 -type d -print -exec git --git-dir={}/.git --work-tree=$PWD/{} pull origin master \;
das funktioniert wunderbar bei repos, die zum pullen keine auth brauchen. unser git server will aber immer credentials sehen - wie mache ich das in dem fall? das skript sollte möglichst ohne anpassung mit neu hinzugefügten oder gelöschten repos umgehen können.

COLOSSUS

# pkill -9 .
Avatar
Registered: Dec 2000
Location: Wien || Stmk
Posts: 10927
Mit einem fuer diesen ausfuehrenden User laufenden ssh-agent(1), der die entsprechend notwendigen Identitaeten/Keys geladen hat.

Edith meint noch: Ich hab das in der Arbeit immer so gemacht (per Konvention lebten dort alle repo-clones in ~/codebase/):

Code:
alias pullall='(cd ~/codebase/ && for i in */; do (test -d "$i/.git" || exit 0; cd "$i" && git pull &>/dev/null || echo "FAILED PULL: $i" >&2) & done; wait; echo DONE)'

Edith meint auszerdem noch: Schau dir den Parameter "-C" zu git an, das koennte dein -exec-Argument vereinfachen helfen :)
Bearbeitet von COLOSSUS am 25.03.2020, 11:32
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz