Benutzer:MathiasMahnke/SVN Git Migration 2015

Aus Opennet
Wechseln zu: Navigation, Suche

Status: Erledigt.

Übernahme der Opennet Subversion (SVN) Repositories zur Opennet Git Versionsverwaltung - 08/2015.

SVN Repositories, Entfallen:

  • on_firmware_ng - ist leer, kann weg
  • on_geronimo - wurde schon nach Git übertragen, kann weg
  • on_map - ist leer, kann weg

SVN Repositories, Erledigt:

  • on_opennetca - Opennet CA, Migration nach Git erfolgt
  • on_firmware - die ursprüngliche Firmware, würde ich ungern wegwerfen, vielleicht retten wir es irgendwie mit rüber, Migration nach Git erfolgt
  • on_dta - Export Überweisungen, von Thomas M. aus seiner Zeit als Finanzer, Migration nach Git erfolgt
  • on_management_portal - studentisches Projekt "ON Selfservice", wurde nie ganz fertig, Migration nach Git erfolgt
  • on_networkstatus - unsere ursprüngliche Accounting- und Überwachungssoftware samt Karte & etc aus dem Jahr 0 (ff.), Migration nach Git erfolgt
  • on_useradmin - ein Vorläufer vom "ON Selfservice", vom Thomas M. begonnen, Migration nach Git erfolgt
  • on_webstat - analog "networkstatus", spezielle Auswertungen aus den Anfangsjahren (Gateway, OLSR, VPN) von mir, Migration nach Git erfolgt

Migrationsvorgang:

  • Anlage mittels Gitolite-admin, Initialisieren (Clone, Init, Commit, Push), Trac (Hook) und für Web vorbereiten (Apache, update-server-info)
  • Migration
svn checkout svn://svn.opennet-initiative.de/<repository>
cd <repository>
svn log -q | awk -F '|' '/^r/ {sub("^ ", "", $2); sub(" $", "", $2); print $2" = "$2" <"$2">"}' | sort -u > authors-transform.txt
vi authors-transform.txt ...
git svn clone svn://svn.opennet-initiative.de/<repository> --no-metadata -A authors-transform.txt --stdlayout ../<repository>.git
git branch -av
.. ggf. noch Tags und Branches übernehmen (TODO) ...
git remote add origin git@dev.opennet-initiative.de/<repository>
git push -u origin master
#git push --tags
#git push origin <branch>
  • ggf. mit Merge in ein Repository (per Unterverzeichnis)
 ...
 git svn clone svn://svn.opennet-initiative.de/<old-repository> --no-metadata -A authors-transform.txt --stdlayout ../<old-repository>.git
 cd <old-repository>.git
 git mv -k * <old-repository>
 git commit -m "prepare <old-repository> for import"
 cd ..
 git clone git@dev.opennet-initiative.de:<new-repository>
 cd <new-repository>
 git remote add temp ../<repository>.git/
 git fetch temp
 git merge temp/master --allow-unrelated-histories -m "merge with <old-repository>"
 git remote rm temp
 git push
Meine Werkzeuge
Namensräume

Varianten
Aktionen
Start
Opennet
Kommunikation
Karten
Werkzeuge