da ich jedes mal wieder überlegen und basteln muss - hier ein kurzes Howto - aufbauend auf das HowTo im Wiki.
Am einfachsten nimmt man sich vielleicht irgendeine virtuelle Maschine mit debian drauf.
Man benötigt dafür keinen SVN Account!
Was man braucht ist nur ein Tool:
sudo apt update
sudo apt install subversion
Dann erstellt man eine Arbeitskopie im aktuellen User Home Directory.
svn checkout https://svn.fhem.de/fhem/trunk/fhem ~/fhem-code
Jetzt macht man seine gewünschte Änderung, am einfachsten mit nano (hier gibt es ein paar nützliche Tastenkürzel) Zum arbeiten macht es sich einfacher, wenn man im aktuellen "Working-Copy" Directory steht! Nach getaner Änderung lässt man sich den Patch anzeigen:
cd ~/fhem-code
svn diff
bzw. erstellt man gleich eine patch Datei in seinem Homeverzeichnis mit einem sprechenden Namen.
svn diff > ~/cref_motd.patch
Will man den Original Zustand der gesamten Arbeitskopie wiederherstellen:
svn revert --recursive .
Man kann die aktuellen Dateien aus dem SVN holen, treten Konflikte auf, kann man diese mit tf überschreiben.
svn update
Ein erneutes checkout holt zwar Änderungen vom Server, überschreibt aber lokale Änderungen nur wenn neue Versionen auf dem Server vorliegen!
Den eigene Patch wieder anwenden und testen:
svn patch ~/cref_motd.patch
Ist man fertig und kann von der Maschine nicht veröffentlichen, kopiert man sich das schnell auf den Arbeits PC:
scp ~/cref_motd.patch user@host:
Code Einchecken
cd ~/fhem-ssh
svn update
Man kann den Code komfortabel mit notepad++ und dem NppFTP Plugin von Windows aus über ssh auf einer linux Umgebung editieren.
Hat man die Änderungen fertig und getestet, erfolgt nochmal eine Überprüfung auf Konflikte mit eventuellen aktuellen Änderungen und dann commit.
svn diff
svn commit -m "Dateiname:Beschreibung"
Da man dies selten tut, kann man die alten Befehle aus der Versenkung holen:
history|grep 'svn'
grep "svn co " ~/.bash_history
Man kann sich vom aktuellen Pfad oder von einem anderem Pfad auch den Stand anzeigen lassen:
svn info
svn info ~/fhem-neu
...
Keine Kommentare:
Kommentar veröffentlichen