Geil, DANKE! Mit freundlichen Grüßen Stefan Rank-Kunitz - Lead Developer - ________________________________________________________ TraSo GmbH Georg-Schumann-Str. 294 D-04159 Leipzig Tel.: +49 341 355 740 - 43 E-Mail: s.rank-kunitz@traso.de ________________________________________________________ Handelsregister: Amtsgericht Leipzig, HRB 21850 Am 30.05.2016 um 11:20 schrieb Felix Seidel:
Ich hab einen ein terminal-command zusammengefriemelt um die origin-URLs automatisiert anzupassen:
for D in `find . -maxdepth 3 -type d`; do if [ -d $D/.git ]; then cd $D; pwd; git remote -v git remote set-url origin $(git remote -v | head -1 | sed -e "s/origin//" | sed -e "s/(fetch)//" | sed -e "s/ssh:\/\/git@stash.app.activate.de:7999/ssh:\/\/git@stash.app.infra.gs.xtrav.de:7999/"); git remote -v cd ..; fi done
als oneliner: for D in `find . -maxdepth 3 -type d`;do if [ -d $D/.git ]; then; cd $D; pwd; git remote -v; git remote set-url origin $(git remote -v | head -1 | sed -e "s/origin//" | sed -e "s/(fetch)//" | sed -e "s/ssh:\/\/git@stash.app.activate.de:7999/ssh:\/\/git@stash.app.infra.gs.xtrav.de:7999/"); git remote -v; cd ..; fi; done
Wildcard (replace any git URL with the new fancy one): for D in `find . -maxdepth 3 -type d`;do if [ -d $D/.git ]; then; cd $D; pwd; git remote -v; git remote set-url origin $(git remote -v | head -1 | sed -e "s/origin//" | sed -e "s/(fetch)//" | sed -e "s/ssh:\/\/.*:7999/ssh:\/\/git@stash.app.infra.gs.xtrav.de:7999/"); git remote -v; cd ..; fi; done
Ausgabe erfolgt nach dem Schema: Aktueller Ordner Alte Remote URL(s) Neue Remote URL(s)
Beispiel: /home/fseidel/xres-vm-fse/externals origin ssh://git@stash.app.activate.de:7999/php/externals.git (fetch) origin ssh://git@stash.app.activate.de:7999/php/externals.git (push) origin ssh://git@stash.app.infra.gs.xtrav.de:7999/php/externals.git (fetch) origin ssh://git@stash.app.infra.gs.xtrav.de:7999/php/externals.git (push)
Einfach aus dem xres_vm_3lc Verzeichnis aufrufen, die Unterordner werden bis zu 3 Ebenen rekursiv nach git-Verzeichnissen durchsucht. Die URLs können natürlich frei angepasst werden. URLs werden neu gesetzt, jedoch kann ich es nicht verifizieren, da Stash gerade nicht per SSH erreichbar ist und http nicht so derbe ist.