Unterschiede zwischen branches einfach anzeigen lassen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
ThorstenS
Beiträge: 2875
Registriert: 24.04.2004 15:33:31

Unterschiede zwischen branches einfach anzeigen lassen

Beitrag von ThorstenS » 05.09.2012 08:46:29

Hi Leute,
einige Kollegen arbeiten mit svn an einem Projekt.
Jetzt ist aufgefallen, dass Änderungen im trunk vorgenommen wurden, die auch in einem branch hilfreich/notwendig wären.
Wie kann ich mir die Unterschiede zw. zwei branches bzw. zw. branch und trunk anzeigen lassen? Es müssen Dateinamenänderungen berücksichtigt werden, die „svn move“ erzeugt…
Für einfache Dinge nutze ich Debianmeld, das reicht hier aber nicht aus.

Auf der console reicht im Prinzip das hier:
svn diff https://svn.intranet.local/svn/branches ... er/ordner1 https://svn.intranet.local/svn/trunk/server/ordner1

Von git her bin ich von der farblichen Hervorhebung verwöhnt, das fehlt bei svn. Daher wäre ein grafisches Tool schon toll.

Benutzeravatar
schorsch_76
Beiträge: 2601
Registriert: 06.11.2007 16:00:42
Lizenz eigener Beiträge: MIT Lizenz

Re: Unterschiede zwischen branches einfach anzeigen lassen

Beitrag von schorsch_76 » 05.09.2012 09:18:55

Du kannst auch Debiangit-svn nutzen um mit Hilfe von git auf einem svn Repo zu arbeiten. Siehe [1]

Gruß
schorsch

[1] http://viget.com/extend/effectively-usi ... subversion
[2] https://git.wiki.kernel.org/index.php/I ... _and_tools

Benutzeravatar
ThorstenS
Beiträge: 2875
Registriert: 24.04.2004 15:33:31

Re: Unterschiede zwischen branches einfach anzeigen lassen

Beitrag von ThorstenS » 05.09.2012 09:43:46

Danke dir, git-svn kommt mir entgegen. Der viget-com Link und der Folgeartikel mit den daily hints sind sehr lesenswert!

Benutzeravatar
ThorstenS
Beiträge: 2875
Registriert: 24.04.2004 15:33:31

Re: Unterschiede zwischen branches einfach anzeigen lassen

Beitrag von ThorstenS » 05.09.2012 10:14:59

So, ich habe erstmal eine ausreichend gute Lösung gefunden.
Der o.g. „svn diff“ Aufruf wird in einer Datei umgeleitet.
Dann im vim die ggflls. von latin1 nach utf-8 konvertieren (oder mit recode iso-8859-1..utf-8)

Code: Alles auswählen

:set encoding=latin1
:w ++enc=utf-8
Und mit dem tool pygments aus dem Paket Debianpython-pygments eine HTML Seite basteln, die wirklich jeder wunderbar im Browser lesen kann:

Code: Alles auswählen

pygmentize -f html -O style=trac -O full -o /tmp/svn.html /tmp/svn.diff 
Jede Datei, in der "Eigenschaftsänderungen" am Ende aufgeführt bzw. eine Revision 0 aufweisen, sind von einem svn move betroffen und kann spearat gegenübergestellt werde. Damit kann ich erstmal leben.
Zuletzt geändert von ThorstenS am 05.09.2012 10:17:52, insgesamt 1-mal geändert.

Benutzeravatar
GoKi
Beiträge: 2068
Registriert: 04.07.2003 23:08:56
Lizenz eigener Beiträge: MIT Lizenz

Re: Unterschiede zwischen branches einfach anzeigen lassen

Beitrag von GoKi » 05.09.2012 10:17:37

Wenn Du die Ausgabe von "svn diff" in Farbe und bunt willst, dann kann man colordiff mit einspannen:

Code: Alles auswählen

svn diff --diff-cmd=colordiff a b
MfG GoKi
:wq

Benutzeravatar
ThorstenS
Beiträge: 2875
Registriert: 24.04.2004 15:33:31

Re: Unterschiede zwischen branches einfach anzeigen lassen

Beitrag von ThorstenS » 05.09.2012 10:19:23

Oh wie geil! Wieso kannte ich colordiff noch nicht? Ein Dank auch an dich :)

Mein Favorit ab jetzt:

Code: Alles auswählen

svn diff --diff-cmd=colordiff $A $B | less -R

Antworten